@fastybird/smart-panel-backend 1.1.0-alpha.64 → 1.1.0-alpha.66

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 (1108) hide show
  1. package/dist/app.module.d.ts +3 -1
  2. package/dist/app.module.js +5 -1
  3. package/dist/app.module.js.map +1 -1
  4. package/dist/cli.js +1 -0
  5. package/dist/cli.js.map +1 -1
  6. package/dist/common/database/sqlite-data-source.d.ts +37 -0
  7. package/dist/common/database/sqlite-data-source.js +2131 -0
  8. package/dist/common/database/sqlite-data-source.js.map +1 -0
  9. package/dist/dataSource.d.ts +3 -1
  10. package/dist/dataSource.js +3 -3
  11. package/dist/dataSource.js.map +1 -1
  12. package/dist/main.js +1 -0
  13. package/dist/main.js.map +1 -1
  14. package/dist/migrations/1000000000002-AddTokenLastUsedAt.js +1 -0
  15. package/dist/migrations/1000000000002-AddTokenLastUsedAt.js.map +1 -1
  16. package/dist/migrations/1000000000027-AddVirtualProducerBindings.d.ts +7 -0
  17. package/dist/migrations/1000000000027-AddVirtualProducerBindings.js +87 -0
  18. package/dist/migrations/1000000000027-AddVirtualProducerBindings.js.map +1 -0
  19. package/dist/migrations/1000000000028-AddShellySampleSources.d.ts +6 -0
  20. package/dist/migrations/1000000000028-AddShellySampleSources.js +29 -0
  21. package/dist/migrations/1000000000028-AddShellySampleSources.js.map +1 -0
  22. package/dist/migrations/1000000000029-AddVirtualNumericTransforms.d.ts +6 -0
  23. package/dist/migrations/1000000000029-AddVirtualNumericTransforms.js +31 -0
  24. package/dist/migrations/1000000000029-AddVirtualNumericTransforms.js.map +1 -0
  25. package/dist/migrations/1000000000030-AddZigbeeSampleSources.d.ts +6 -0
  26. package/dist/migrations/1000000000030-AddZigbeeSampleSources.js +33 -0
  27. package/dist/migrations/1000000000030-AddZigbeeSampleSources.js.map +1 -0
  28. package/dist/migrations/1000000000031-AddVirtualThermostatClaims.d.ts +6 -0
  29. package/dist/migrations/1000000000031-AddVirtualThermostatClaims.js +62 -0
  30. package/dist/migrations/1000000000031-AddVirtualThermostatClaims.js.map +1 -0
  31. package/dist/migrations/1000000000032-AddVirtualThermostatRuntime.d.ts +6 -0
  32. package/dist/migrations/1000000000032-AddVirtualThermostatRuntime.js +39 -0
  33. package/dist/migrations/1000000000032-AddVirtualThermostatRuntime.js.map +1 -0
  34. package/dist/migrations/1000000000033-AddThermostatInstallationProfiles.d.ts +6 -0
  35. package/dist/migrations/1000000000033-AddThermostatInstallationProfiles.js +28 -0
  36. package/dist/migrations/1000000000033-AddThermostatInstallationProfiles.js.map +1 -0
  37. package/dist/migrations/1000000000034-AddVirtualThermostatRecoveries.d.ts +6 -0
  38. package/dist/migrations/1000000000034-AddVirtualThermostatRecoveries.js +26 -0
  39. package/dist/migrations/1000000000034-AddVirtualThermostatRecoveries.js.map +1 -0
  40. package/dist/migrations/1000000000035-IndexVirtualThermostatCommands.d.ts +6 -0
  41. package/dist/migrations/1000000000035-IndexVirtualThermostatCommands.js +35 -0
  42. package/dist/migrations/1000000000035-IndexVirtualThermostatCommands.js.map +1 -0
  43. package/dist/migrations/1000000000036-AddVirtualAggregatePolicies.d.ts +6 -0
  44. package/dist/migrations/1000000000036-AddVirtualAggregatePolicies.js +18 -0
  45. package/dist/migrations/1000000000036-AddVirtualAggregatePolicies.js.map +1 -0
  46. package/dist/migrations/1000000000037-AddVirtualAggregateProfiles.d.ts +6 -0
  47. package/dist/migrations/1000000000037-AddVirtualAggregateProfiles.js +16 -0
  48. package/dist/migrations/1000000000037-AddVirtualAggregateProfiles.js.map +1 -0
  49. package/dist/migrations/1000000000038-AddShellyCoverOrdering.d.ts +6 -0
  50. package/dist/migrations/1000000000038-AddShellyCoverOrdering.js +19 -0
  51. package/dist/migrations/1000000000038-AddShellyCoverOrdering.js.map +1 -0
  52. package/dist/migrations/1000000000039-AddVirtualThermostatComfort.d.ts +6 -0
  53. package/dist/migrations/1000000000039-AddVirtualThermostatComfort.js +16 -0
  54. package/dist/migrations/1000000000039-AddVirtualThermostatComfort.js.map +1 -0
  55. package/dist/migrations/1000000000040-AddThermostatBranchGroups.d.ts +6 -0
  56. package/dist/migrations/1000000000040-AddThermostatBranchGroups.js +32 -0
  57. package/dist/migrations/1000000000040-AddThermostatBranchGroups.js.map +1 -0
  58. package/dist/migrations/1000000000041-AddThermostatMemberProtection.d.ts +6 -0
  59. package/dist/migrations/1000000000041-AddThermostatMemberProtection.js +39 -0
  60. package/dist/migrations/1000000000041-AddThermostatMemberProtection.js.map +1 -0
  61. package/dist/migrations/1000000000042-AddShellyCoverRecoveries.d.ts +6 -0
  62. package/dist/migrations/1000000000042-AddShellyCoverRecoveries.js +19 -0
  63. package/dist/migrations/1000000000042-AddShellyCoverRecoveries.js.map +1 -0
  64. package/dist/migrations/1000000000044-AddVirtualDewPoint.d.ts +6 -0
  65. package/dist/migrations/1000000000044-AddVirtualDewPoint.js +36 -0
  66. package/dist/migrations/1000000000044-AddVirtualDewPoint.js.map +1 -0
  67. package/dist/migrations/1000000000045-AddThermostatCoolingDependencies.d.ts +6 -0
  68. package/dist/migrations/1000000000045-AddThermostatCoolingDependencies.js +32 -0
  69. package/dist/migrations/1000000000045-AddThermostatCoolingDependencies.js.map +1 -0
  70. package/dist/migrations/1000000000046-AddSpaceActivityModes.d.ts +7 -0
  71. package/dist/migrations/1000000000046-AddSpaceActivityModes.js +54 -0
  72. package/dist/migrations/1000000000046-AddSpaceActivityModes.js.map +1 -0
  73. package/dist/migrations/1000000000047-AddClimateAutomationOwnership.d.ts +6 -0
  74. package/dist/migrations/1000000000047-AddClimateAutomationOwnership.js +60 -0
  75. package/dist/migrations/1000000000047-AddClimateAutomationOwnership.js.map +1 -0
  76. package/dist/migrations/1000000000048-AddThermostatCreationCatalogBirths.d.ts +6 -0
  77. package/dist/migrations/1000000000048-AddThermostatCreationCatalogBirths.js +208 -0
  78. package/dist/migrations/1000000000048-AddThermostatCreationCatalogBirths.js.map +1 -0
  79. package/dist/migrations/1000000000049-FenceClimateAutomationLifecycle.d.ts +6 -0
  80. package/dist/migrations/1000000000049-FenceClimateAutomationLifecycle.js +40 -0
  81. package/dist/migrations/1000000000049-FenceClimateAutomationLifecycle.js.map +1 -0
  82. package/dist/migrations/1000000000050-AddSpaceModeSchedules.d.ts +6 -0
  83. package/dist/migrations/1000000000050-AddSpaceModeSchedules.js +36 -0
  84. package/dist/migrations/1000000000050-AddSpaceModeSchedules.js.map +1 -0
  85. package/dist/migrations/1000000000051-AddSpaceOccupancy.d.ts +6 -0
  86. package/dist/migrations/1000000000051-AddSpaceOccupancy.js +34 -0
  87. package/dist/migrations/1000000000051-AddSpaceOccupancy.js.map +1 -0
  88. package/dist/migrations/1000000000052-AddNativeThermostats.d.ts +6 -0
  89. package/dist/migrations/1000000000052-AddNativeThermostats.js +39 -0
  90. package/dist/migrations/1000000000052-AddNativeThermostats.js.map +1 -0
  91. package/dist/migrations/1000000000053-AddThermostatOverrideClocks.d.ts +6 -0
  92. package/dist/migrations/1000000000053-AddThermostatOverrideClocks.js +35 -0
  93. package/dist/migrations/1000000000053-AddThermostatOverrideClocks.js.map +1 -0
  94. package/dist/modules/buddy/buddy.utils.d.ts +1 -1
  95. package/dist/modules/buddy/buddy.utils.js +10 -11
  96. package/dist/modules/buddy/buddy.utils.js.map +1 -1
  97. package/dist/modules/buddy/services/buddy-context.service.js +2 -1
  98. package/dist/modules/buddy/services/buddy-context.service.js.map +1 -1
  99. package/dist/modules/buddy/services/home-context-tool-provider.service.d.ts +1 -1
  100. package/dist/modules/devices/contracts/climate-automation.contract.d.ts +111 -0
  101. package/dist/modules/devices/contracts/climate-automation.contract.js +3 -0
  102. package/dist/modules/devices/contracts/climate-automation.contract.js.map +1 -0
  103. package/dist/modules/devices/controllers/channels.properties.controller.d.ts +1 -1
  104. package/dist/modules/devices/controllers/channels.properties.controller.js +11 -4
  105. package/dist/modules/devices/controllers/channels.properties.controller.js.map +1 -1
  106. package/dist/modules/devices/controllers/devices.channels.properties.controller.d.ts +1 -1
  107. package/dist/modules/devices/controllers/devices.channels.properties.controller.js +11 -4
  108. package/dist/modules/devices/controllers/devices.channels.properties.controller.js.map +1 -1
  109. package/dist/modules/devices/controllers/property-command.controller.d.ts +9 -0
  110. package/dist/modules/devices/controllers/property-command.controller.js +88 -0
  111. package/dist/modules/devices/controllers/property-command.controller.js.map +1 -0
  112. package/dist/modules/devices/devices.constants.d.ts +4 -0
  113. package/dist/modules/devices/devices.constants.js +4 -0
  114. package/dist/modules/devices/devices.constants.js.map +1 -1
  115. package/dist/modules/devices/devices.module.js +22 -0
  116. package/dist/modules/devices/devices.module.js.map +1 -1
  117. package/dist/modules/devices/devices.openapi.d.ts +3 -1
  118. package/dist/modules/devices/devices.openapi.js +39 -0
  119. package/dist/modules/devices/devices.openapi.js.map +1 -1
  120. package/dist/modules/devices/dto/property-command.dto.js +20 -6
  121. package/dist/modules/devices/dto/property-command.dto.js.map +1 -1
  122. package/dist/modules/devices/dto/update-device.dto.d.ts +1 -1
  123. package/dist/modules/devices/dto/update-device.dto.js +4 -3
  124. package/dist/modules/devices/dto/update-device.dto.js.map +1 -1
  125. package/dist/modules/devices/entities/climate-automation.entity.d.ts +56 -0
  126. package/dist/modules/devices/entities/climate-automation.entity.js +231 -0
  127. package/dist/modules/devices/entities/climate-automation.entity.js.map +1 -0
  128. package/dist/modules/devices/entities/devices.entity.d.ts +4 -0
  129. package/dist/modules/devices/entities/devices.entity.js +27 -3
  130. package/dist/modules/devices/entities/devices.entity.js.map +1 -1
  131. package/dist/modules/devices/interceptors/property-command-entry.interceptor.d.ts +10 -0
  132. package/dist/modules/devices/interceptors/property-command-entry.interceptor.js +50 -0
  133. package/dist/modules/devices/interceptors/property-command-entry.interceptor.js.map +1 -0
  134. package/dist/modules/devices/models/composite-command.model.d.ts +16 -0
  135. package/dist/modules/devices/models/composite-command.model.js +99 -0
  136. package/dist/modules/devices/models/composite-command.model.js.map +1 -0
  137. package/dist/modules/devices/models/property-command-response.model.d.ts +18 -0
  138. package/dist/modules/devices/models/property-command-response.model.js +90 -0
  139. package/dist/modules/devices/models/property-command-response.model.js.map +1 -0
  140. package/dist/modules/devices/models/property-read-policy.model.d.ts +4 -0
  141. package/dist/modules/devices/models/property-read-policy.model.js +57 -0
  142. package/dist/modules/devices/models/property-read-policy.model.js.map +1 -0
  143. package/dist/modules/devices/models/property-sample.model.d.ts +50 -0
  144. package/dist/modules/devices/models/property-sample.model.js +3 -0
  145. package/dist/modules/devices/models/property-sample.model.js.map +1 -0
  146. package/dist/modules/devices/models/property-value-state.model.d.ts +11 -0
  147. package/dist/modules/devices/models/property-value-state.model.js +55 -1
  148. package/dist/modules/devices/models/property-value-state.model.js.map +1 -1
  149. package/dist/modules/devices/platforms/device.platform.d.ts +43 -0
  150. package/dist/modules/devices/platforms/native-climate.contract.d.ts +50 -0
  151. package/dist/modules/devices/platforms/native-climate.contract.js +3 -0
  152. package/dist/modules/devices/platforms/native-climate.contract.js.map +1 -0
  153. package/dist/modules/devices/services/channels-type-mapper.service.d.ts +3 -0
  154. package/dist/modules/devices/services/channels-type-mapper.service.js +21 -1
  155. package/dist/modules/devices/services/channels-type-mapper.service.js.map +1 -1
  156. package/dist/modules/devices/services/channels.properties-type-mapper.service.d.ts +7 -2
  157. package/dist/modules/devices/services/channels.properties-type-mapper.service.js +21 -1
  158. package/dist/modules/devices/services/channels.properties-type-mapper.service.js.map +1 -1
  159. package/dist/modules/devices/services/channels.properties.service.d.ts +11 -2
  160. package/dist/modules/devices/services/channels.properties.service.js +219 -64
  161. package/dist/modules/devices/services/channels.properties.service.js.map +1 -1
  162. package/dist/modules/devices/services/channels.service.d.ts +12 -5
  163. package/dist/modules/devices/services/channels.service.js +148 -55
  164. package/dist/modules/devices/services/channels.service.js.map +1 -1
  165. package/dist/modules/devices/services/climate-automation-ledger-lifecycle.d.ts +47 -0
  166. package/dist/modules/devices/services/climate-automation-ledger-lifecycle.js +242 -0
  167. package/dist/modules/devices/services/climate-automation-ledger-lifecycle.js.map +1 -0
  168. package/dist/modules/devices/services/climate-automation-ledger.service.d.ts +68 -0
  169. package/dist/modules/devices/services/climate-automation-ledger.service.js +1061 -0
  170. package/dist/modules/devices/services/climate-automation-ledger.service.js.map +1 -0
  171. package/dist/modules/devices/services/climate-automation-ledger.utils.d.ts +8 -0
  172. package/dist/modules/devices/services/climate-automation-ledger.utils.js +54 -0
  173. package/dist/modules/devices/services/climate-automation-ledger.utils.js.map +1 -0
  174. package/dist/modules/devices/services/climate-automation.registry.service.d.ts +15 -0
  175. package/dist/modules/devices/services/climate-automation.registry.service.js +71 -0
  176. package/dist/modules/devices/services/climate-automation.registry.service.js.map +1 -0
  177. package/dist/modules/devices/services/composite-property-command.registry.service.d.ts +48 -0
  178. package/dist/modules/devices/services/composite-property-command.registry.service.js +65 -0
  179. package/dist/modules/devices/services/composite-property-command.registry.service.js.map +1 -0
  180. package/dist/modules/devices/services/controller-publication-context.d.ts +27 -0
  181. package/dist/modules/devices/services/controller-publication-context.js +148 -0
  182. package/dist/modules/devices/services/controller-publication-context.js.map +1 -0
  183. package/dist/modules/devices/services/cover-action-proof.d.ts +7 -0
  184. package/dist/modules/devices/services/cover-action-proof.js +142 -0
  185. package/dist/modules/devices/services/cover-action-proof.js.map +1 -0
  186. package/dist/modules/devices/services/creation-capture.d.ts +19 -0
  187. package/dist/modules/devices/services/creation-capture.js +85 -0
  188. package/dist/modules/devices/services/creation-capture.js.map +1 -0
  189. package/dist/modules/devices/services/device-command-graph.service.js +1 -1
  190. package/dist/modules/devices/services/device-command-graph.service.js.map +1 -1
  191. package/dist/modules/devices/services/device-connection-state.service.d.ts +1 -0
  192. package/dist/modules/devices/services/device-connection-state.service.js +64 -18
  193. package/dist/modules/devices/services/device-connection-state.service.js.map +1 -1
  194. package/dist/modules/devices/services/device-connectivity.service.js +96 -51
  195. package/dist/modules/devices/services/device-connectivity.service.js.map +1 -1
  196. package/dist/modules/devices/services/device-contribution.registry.service.d.ts +50 -0
  197. package/dist/modules/devices/services/device-contribution.registry.service.js +45 -0
  198. package/dist/modules/devices/services/device-contribution.registry.service.js.map +1 -0
  199. package/dist/modules/devices/services/device-creation-context.d.ts +57 -0
  200. package/dist/modules/devices/services/device-creation-context.js +315 -0
  201. package/dist/modules/devices/services/device-creation-context.js.map +1 -0
  202. package/dist/modules/devices/services/device-structure-lock.service.d.ts +5 -0
  203. package/dist/modules/devices/services/device-structure-lock.service.js +64 -12
  204. package/dist/modules/devices/services/device-structure-lock.service.js.map +1 -1
  205. package/dist/modules/devices/services/device-validation.service.d.ts +0 -1
  206. package/dist/modules/devices/services/device-validation.service.js +3 -14
  207. package/dist/modules/devices/services/device-validation.service.js.map +1 -1
  208. package/dist/modules/devices/services/device-zones.service.d.ts +3 -1
  209. package/dist/modules/devices/services/device-zones.service.js +30 -6
  210. package/dist/modules/devices/services/device-zones.service.js.map +1 -1
  211. package/dist/modules/devices/services/devices-type-mapper.service.d.ts +3 -0
  212. package/dist/modules/devices/services/devices-type-mapper.service.js +21 -1
  213. package/dist/modules/devices/services/devices-type-mapper.service.js.map +1 -1
  214. package/dist/modules/devices/services/devices.service.d.ts +8 -2
  215. package/dist/modules/devices/services/devices.service.js +194 -49
  216. package/dist/modules/devices/services/devices.service.js.map +1 -1
  217. package/dist/modules/devices/services/platform.registry.service.d.ts +11 -1
  218. package/dist/modules/devices/services/platform.registry.service.js +42 -5
  219. package/dist/modules/devices/services/platform.registry.service.js.map +1 -1
  220. package/dist/modules/devices/services/property-command-admission.registry.service.d.ts +28 -0
  221. package/dist/modules/devices/services/property-command-admission.registry.service.js +70 -0
  222. package/dist/modules/devices/services/property-command-admission.registry.service.js.map +1 -0
  223. package/dist/modules/devices/services/property-command-dispatch.service.d.ts +28 -2
  224. package/dist/modules/devices/services/property-command-dispatch.service.js +704 -10
  225. package/dist/modules/devices/services/property-command-dispatch.service.js.map +1 -1
  226. package/dist/modules/devices/services/property-command-entry-snapshot.d.ts +25 -0
  227. package/dist/modules/devices/services/property-command-entry-snapshot.js +87 -0
  228. package/dist/modules/devices/services/property-command-entry-snapshot.js.map +1 -0
  229. package/dist/modules/devices/services/property-command-window.service.d.ts +22 -0
  230. package/dist/modules/devices/services/property-command-window.service.js +81 -0
  231. package/dist/modules/devices/services/property-command-window.service.js.map +1 -1
  232. package/dist/modules/devices/services/property-command.service.d.ts +24 -3
  233. package/dist/modules/devices/services/property-command.service.js +180 -18
  234. package/dist/modules/devices/services/property-command.service.js.map +1 -1
  235. package/dist/modules/devices/services/property-metadata.service.js +1 -1
  236. package/dist/modules/devices/services/property-metadata.service.js.map +1 -1
  237. package/dist/modules/devices/services/property-producer.registry.service.d.ts +98 -0
  238. package/dist/modules/devices/services/property-producer.registry.service.js +636 -0
  239. package/dist/modules/devices/services/property-producer.registry.service.js.map +1 -0
  240. package/dist/modules/devices/services/property-value-source.registry.service.d.ts +18 -0
  241. package/dist/modules/devices/services/property-value-source.registry.service.js +291 -2
  242. package/dist/modules/devices/services/property-value-source.registry.service.js.map +1 -1
  243. package/dist/modules/devices/services/property-value.service.d.ts +40 -3
  244. package/dist/modules/devices/services/property-value.service.js +744 -193
  245. package/dist/modules/devices/services/property-value.service.js.map +1 -1
  246. package/dist/modules/devices/subscribers/channel-property-entity.subscriber.d.ts +5 -0
  247. package/dist/modules/devices/subscribers/channel-property-entity.subscriber.js +25 -0
  248. package/dist/modules/devices/subscribers/channel-property-entity.subscriber.js.map +1 -1
  249. package/dist/modules/devices/utils/property-metadata.utils.d.ts +1 -0
  250. package/dist/modules/devices/utils/property-metadata.utils.js +10 -0
  251. package/dist/modules/devices/utils/property-metadata.utils.js.map +1 -1
  252. package/dist/modules/devices/utils/property-permissions.utils.d.ts +2 -0
  253. package/dist/modules/devices/utils/property-permissions.utils.js +10 -0
  254. package/dist/modules/devices/utils/property-permissions.utils.js.map +1 -0
  255. package/dist/modules/extensions/services/discovered-backend.module.d.ts +6 -0
  256. package/dist/modules/extensions/services/discovered-backend.module.js +32 -0
  257. package/dist/modules/extensions/services/discovered-backend.module.js.map +1 -0
  258. package/dist/modules/extensions/services/extensions-discovery.js +15 -0
  259. package/dist/modules/extensions/services/extensions-discovery.js.map +1 -1
  260. package/dist/modules/extensions/services/extensions.service.d.ts +4 -0
  261. package/dist/modules/extensions/services/extensions.service.js +13 -0
  262. package/dist/modules/extensions/services/extensions.service.js.map +1 -1
  263. package/dist/modules/extensions/services/managed-extension-service.interface.d.ts +1 -0
  264. package/dist/modules/extensions/services/managed-service-manager.service.d.ts +15 -0
  265. package/dist/modules/extensions/services/managed-service-manager.service.js +242 -72
  266. package/dist/modules/extensions/services/managed-service-manager.service.js.map +1 -1
  267. package/dist/modules/home-context/schemas/home-search-input.schemas.d.ts +1 -1
  268. package/dist/modules/intents/models/intent.model.d.ts +2 -0
  269. package/dist/modules/intents/models/intent.model.js +14 -0
  270. package/dist/modules/intents/models/intent.model.js.map +1 -1
  271. package/dist/modules/intents/services/intents.service.d.ts +2 -1
  272. package/dist/modules/intents/services/intents.service.js +18 -2
  273. package/dist/modules/intents/services/intents.service.js.map +1 -1
  274. package/dist/modules/scenes/listeners/websocket-exchange.listener.js +4 -0
  275. package/dist/modules/scenes/listeners/websocket-exchange.listener.js.map +1 -1
  276. package/dist/modules/scenes/models/scenes.model.d.ts +2 -0
  277. package/dist/modules/scenes/models/scenes.model.js +10 -0
  278. package/dist/modules/scenes/models/scenes.model.js.map +1 -1
  279. package/dist/modules/scenes/services/scene-executor.service.d.ts +6 -1
  280. package/dist/modules/scenes/services/scene-executor.service.js +33 -22
  281. package/dist/modules/scenes/services/scene-executor.service.js.map +1 -1
  282. package/dist/modules/security/providers/alarm-security.provider.d.ts +3 -1
  283. package/dist/modules/security/providers/alarm-security.provider.js +83 -8
  284. package/dist/modules/security/providers/alarm-security.provider.js.map +1 -1
  285. package/dist/modules/spaces/services/space-lifecycle-registry.service.d.ts +19 -0
  286. package/dist/modules/spaces/services/space-lifecycle-registry.service.js +121 -0
  287. package/dist/modules/spaces/services/space-lifecycle-registry.service.js.map +1 -0
  288. package/dist/modules/spaces/services/spaces.service.d.ts +5 -1
  289. package/dist/modules/spaces/services/spaces.service.js +34 -6
  290. package/dist/modules/spaces/services/spaces.service.js.map +1 -1
  291. package/dist/modules/spaces/spaces.constants.d.ts +3 -1
  292. package/dist/modules/spaces/spaces.constants.js +2 -0
  293. package/dist/modules/spaces/spaces.constants.js.map +1 -1
  294. package/dist/modules/spaces/spaces.module.js +13 -1
  295. package/dist/modules/spaces/spaces.module.js.map +1 -1
  296. package/dist/modules/storage/services/storage.service.d.ts +8 -0
  297. package/dist/modules/storage/services/storage.service.js +225 -0
  298. package/dist/modules/storage/services/storage.service.js.map +1 -1
  299. package/dist/modules/swagger/decorators/api-documentation.decorator.d.ts +1 -0
  300. package/dist/modules/swagger/decorators/api-documentation.decorator.js +9 -1
  301. package/dist/modules/swagger/decorators/api-documentation.decorator.js.map +1 -1
  302. package/dist/modules/swagger/services/swagger-document.service.d.ts +1 -0
  303. package/dist/modules/swagger/services/swagger-document.service.js +71 -1
  304. package/dist/modules/swagger/services/swagger-document.service.js.map +1 -1
  305. package/dist/modules/system/services/backup.service.js +3 -5
  306. package/dist/modules/system/services/backup.service.js.map +1 -1
  307. package/dist/modules/system/utils/timezone.utils.d.ts +2 -0
  308. package/dist/modules/system/utils/timezone.utils.js +9 -0
  309. package/dist/modules/system/utils/timezone.utils.js.map +1 -0
  310. package/dist/modules/websocket/gateway/websocket.gateway.js +1 -0
  311. package/dist/modules/websocket/gateway/websocket.gateway.js.map +1 -1
  312. package/dist/plugins/devices-home-assistant/devices-home-assistant.plugin.js +2 -0
  313. package/dist/plugins/devices-home-assistant/devices-home-assistant.plugin.js.map +1 -1
  314. package/dist/plugins/devices-home-assistant/dto/update-channel-property.dto.d.ts +3 -3
  315. package/dist/plugins/devices-home-assistant/dto/update-channel-property.dto.js +3 -3
  316. package/dist/plugins/devices-home-assistant/dto/update-channel-property.dto.js.map +1 -1
  317. package/dist/plugins/devices-home-assistant/platforms/home-assistant.device.platform.d.ts +11 -1
  318. package/dist/plugins/devices-home-assistant/platforms/home-assistant.device.platform.js +82 -2
  319. package/dist/plugins/devices-home-assistant/platforms/home-assistant.device.platform.js.map +1 -1
  320. package/dist/plugins/devices-home-assistant/services/home-assistant-native-climate.service.d.ts +22 -0
  321. package/dist/plugins/devices-home-assistant/services/home-assistant-native-climate.service.js +409 -0
  322. package/dist/plugins/devices-home-assistant/services/home-assistant-native-climate.service.js.map +1 -0
  323. package/dist/plugins/devices-home-assistant/services/home-assistant.ws.service.d.ts +14 -0
  324. package/dist/plugins/devices-home-assistant/services/home-assistant.ws.service.js +93 -3
  325. package/dist/plugins/devices-home-assistant/services/home-assistant.ws.service.js.map +1 -1
  326. package/dist/plugins/devices-homekit/devices-homekit.plugin.js +28 -2
  327. package/dist/plugins/devices-homekit/devices-homekit.plugin.js.map +1 -1
  328. package/dist/plugins/devices-homekit/listeners/homekit-event.listener.d.ts +26 -3
  329. package/dist/plugins/devices-homekit/listeners/homekit-event.listener.js +183 -5
  330. package/dist/plugins/devices-homekit/listeners/homekit-event.listener.js.map +1 -1
  331. package/dist/plugins/devices-homekit/mappers/base.mapper.d.ts +2 -1
  332. package/dist/plugins/devices-homekit/mappers/base.mapper.js +38 -10
  333. package/dist/plugins/devices-homekit/mappers/base.mapper.js.map +1 -1
  334. package/dist/plugins/devices-homekit/mappers/battery.mapper.js +4 -3
  335. package/dist/plugins/devices-homekit/mappers/battery.mapper.js.map +1 -1
  336. package/dist/plugins/devices-homekit/mappers/button.mapper.js +21 -2
  337. package/dist/plugins/devices-homekit/mappers/button.mapper.js.map +1 -1
  338. package/dist/plugins/devices-homekit/mappers/characteristic-get.d.ts +3 -0
  339. package/dist/plugins/devices-homekit/mappers/characteristic-get.js +10 -0
  340. package/dist/plugins/devices-homekit/mappers/characteristic-get.js.map +1 -0
  341. package/dist/plugins/devices-homekit/mappers/characteristic-write.d.ts +1 -1
  342. package/dist/plugins/devices-homekit/mappers/characteristic-write.js +2 -1
  343. package/dist/plugins/devices-homekit/mappers/characteristic-write.js.map +1 -1
  344. package/dist/plugins/devices-homekit/mappers/fan.mapper.d.ts +12 -0
  345. package/dist/plugins/devices-homekit/mappers/fan.mapper.js +126 -0
  346. package/dist/plugins/devices-homekit/mappers/fan.mapper.js.map +1 -0
  347. package/dist/plugins/devices-homekit/mappers/homekit-mapper.interface.d.ts +8 -0
  348. package/dist/plugins/devices-homekit/mappers/outlet.mapper.js +4 -0
  349. package/dist/plugins/devices-homekit/mappers/outlet.mapper.js.map +1 -1
  350. package/dist/plugins/devices-homekit/mappers/property-read.d.ts +7 -0
  351. package/dist/plugins/devices-homekit/mappers/property-read.js +64 -0
  352. package/dist/plugins/devices-homekit/mappers/property-read.js.map +1 -0
  353. package/dist/plugins/devices-homekit/mappers/semantic-conversion.d.ts +2 -0
  354. package/dist/plugins/devices-homekit/mappers/semantic-conversion.js +15 -0
  355. package/dist/plugins/devices-homekit/mappers/semantic-conversion.js.map +1 -0
  356. package/dist/plugins/devices-homekit/mappers/sensor.mapper.d.ts +3 -0
  357. package/dist/plugins/devices-homekit/mappers/sensor.mapper.js +63 -11
  358. package/dist/plugins/devices-homekit/mappers/sensor.mapper.js.map +1 -1
  359. package/dist/plugins/devices-homekit/mappers/service-fault.d.ts +4 -0
  360. package/dist/plugins/devices-homekit/mappers/service-fault.js +33 -0
  361. package/dist/plugins/devices-homekit/mappers/service-fault.js.map +1 -0
  362. package/dist/plugins/devices-homekit/mappers/thermostat-coordinator.d.ts +4 -0
  363. package/dist/plugins/devices-homekit/mappers/thermostat-coordinator.js +128 -19
  364. package/dist/plugins/devices-homekit/mappers/thermostat-coordinator.js.map +1 -1
  365. package/dist/plugins/devices-homekit/mappers/thermostat.mapper.js +5 -3
  366. package/dist/plugins/devices-homekit/mappers/thermostat.mapper.js.map +1 -1
  367. package/dist/plugins/devices-homekit/mappers/unavailable-characteristic.d.ts +3 -0
  368. package/dist/plugins/devices-homekit/mappers/unavailable-characteristic.js +18 -0
  369. package/dist/plugins/devices-homekit/mappers/unavailable-characteristic.js.map +1 -0
  370. package/dist/plugins/devices-homekit/mappers/window-covering.mapper.js +19 -3
  371. package/dist/plugins/devices-homekit/mappers/window-covering.mapper.js.map +1 -1
  372. package/dist/plugins/devices-homekit/services/homekit-bridge.service.d.ts +4 -0
  373. package/dist/plugins/devices-homekit/services/homekit-bridge.service.js +58 -29
  374. package/dist/plugins/devices-homekit/services/homekit-bridge.service.js.map +1 -1
  375. package/dist/plugins/devices-homekit/services/homekit-command.dispatcher.d.ts +2 -0
  376. package/dist/plugins/devices-homekit/services/homekit-command.dispatcher.js +3 -0
  377. package/dist/plugins/devices-homekit/services/homekit-command.dispatcher.js.map +1 -1
  378. package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.d.ts +30 -2
  379. package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.js +126 -2
  380. package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.js.map +1 -1
  381. package/dist/plugins/devices-homekit/services/homekit-mapping-maintenance.d.ts +8 -0
  382. package/dist/plugins/devices-homekit/services/homekit-mapping-maintenance.js +17 -0
  383. package/dist/plugins/devices-homekit/services/homekit-mapping-maintenance.js.map +1 -0
  384. package/dist/plugins/devices-homekit/services/homekit-property-state.service.d.ts +19 -0
  385. package/dist/plugins/devices-homekit/services/homekit-property-state.service.js +69 -0
  386. package/dist/plugins/devices-homekit/services/homekit-property-state.service.js.map +1 -0
  387. package/dist/plugins/devices-shelly-ng/contracts/cover-action.contract.d.ts +13 -0
  388. package/dist/plugins/devices-shelly-ng/contracts/cover-action.contract.js +60 -0
  389. package/dist/plugins/devices-shelly-ng/contracts/cover-action.contract.js.map +1 -0
  390. package/dist/plugins/devices-shelly-ng/contracts/cover-recovery.contract.d.ts +13 -0
  391. package/dist/plugins/devices-shelly-ng/contracts/cover-recovery.contract.js +3 -0
  392. package/dist/plugins/devices-shelly-ng/contracts/cover-recovery.contract.js.map +1 -0
  393. package/dist/plugins/devices-shelly-ng/contracts/guard-script-source.d.ts +1 -0
  394. package/dist/plugins/devices-shelly-ng/contracts/guard-script-source.js +5 -0
  395. package/dist/plugins/devices-shelly-ng/contracts/guard-script-source.js.map +1 -0
  396. package/dist/plugins/devices-shelly-ng/contracts/guard-script.contract.d.ts +21 -0
  397. package/dist/plugins/devices-shelly-ng/contracts/guard-script.contract.js +47 -0
  398. package/dist/plugins/devices-shelly-ng/contracts/guard-script.contract.js.map +1 -0
  399. package/dist/plugins/devices-shelly-ng/contracts/member-guard-script-source.d.ts +2 -0
  400. package/dist/plugins/devices-shelly-ng/contracts/member-guard-script-source.js +27 -0
  401. package/dist/plugins/devices-shelly-ng/contracts/member-guard-script-source.js.map +1 -0
  402. package/dist/plugins/devices-shelly-ng/contracts/native-temperature.contract.d.ts +36 -0
  403. package/dist/plugins/devices-shelly-ng/contracts/native-temperature.contract.js +200 -0
  404. package/dist/plugins/devices-shelly-ng/contracts/native-temperature.contract.js.map +1 -0
  405. package/dist/plugins/devices-shelly-ng/contracts/protective-switch.contract.d.ts +44 -0
  406. package/dist/plugins/devices-shelly-ng/contracts/protective-switch.contract.js +29 -0
  407. package/dist/plugins/devices-shelly-ng/contracts/protective-switch.contract.js.map +1 -0
  408. package/dist/plugins/devices-shelly-ng/controllers/shelly-cover-recovery.controller.d.ts +11 -0
  409. package/dist/plugins/devices-shelly-ng/controllers/shelly-cover-recovery.controller.js +98 -0
  410. package/dist/plugins/devices-shelly-ng/controllers/shelly-cover-recovery.controller.js.map +1 -0
  411. package/dist/plugins/devices-shelly-ng/delegates/delegates-manager.service.d.ts +51 -1
  412. package/dist/plugins/devices-shelly-ng/delegates/delegates-manager.service.js +688 -2
  413. package/dist/plugins/devices-shelly-ng/delegates/delegates-manager.service.js.map +1 -1
  414. package/dist/plugins/devices-shelly-ng/delegates/shelly-device.delegate.d.ts +46 -1
  415. package/dist/plugins/devices-shelly-ng/delegates/shelly-device.delegate.js +315 -4
  416. package/dist/plugins/devices-shelly-ng/delegates/shelly-device.delegate.js.map +1 -1
  417. package/dist/plugins/devices-shelly-ng/devices-shelly-ng.openapi.d.ts +3 -1
  418. package/dist/plugins/devices-shelly-ng/devices-shelly-ng.openapi.js +8 -0
  419. package/dist/plugins/devices-shelly-ng/devices-shelly-ng.openapi.js.map +1 -1
  420. package/dist/plugins/devices-shelly-ng/devices-shelly-ng.plugin.js +16 -1
  421. package/dist/plugins/devices-shelly-ng/devices-shelly-ng.plugin.js.map +1 -1
  422. package/dist/plugins/devices-shelly-ng/dto/cover-recovery.dto.d.ts +11 -0
  423. package/dist/plugins/devices-shelly-ng/dto/cover-recovery.dto.js +77 -0
  424. package/dist/plugins/devices-shelly-ng/dto/cover-recovery.dto.js.map +1 -0
  425. package/dist/plugins/devices-shelly-ng/entities/shelly-cover-ordering.entity.d.ts +5 -0
  426. package/dist/plugins/devices-shelly-ng/entities/shelly-cover-ordering.entity.js +32 -0
  427. package/dist/plugins/devices-shelly-ng/entities/shelly-cover-ordering.entity.js.map +1 -0
  428. package/dist/plugins/devices-shelly-ng/entities/shelly-cover-recovery.entity.d.ts +17 -0
  429. package/dist/plugins/devices-shelly-ng/entities/shelly-cover-recovery.entity.js +80 -0
  430. package/dist/plugins/devices-shelly-ng/entities/shelly-cover-recovery.entity.js.map +1 -0
  431. package/dist/plugins/devices-shelly-ng/entities/shelly-sample-source.entity.d.ts +16 -0
  432. package/dist/plugins/devices-shelly-ng/entities/shelly-sample-source.entity.js +70 -0
  433. package/dist/plugins/devices-shelly-ng/entities/shelly-sample-source.entity.js.map +1 -0
  434. package/dist/plugins/devices-shelly-ng/mappings/definitions/covers.yaml +30 -24
  435. package/dist/plugins/devices-shelly-ng/models/cover-recovery.model.d.ts +21 -0
  436. package/dist/plugins/devices-shelly-ng/models/cover-recovery.model.js +114 -0
  437. package/dist/plugins/devices-shelly-ng/models/cover-recovery.model.js.map +1 -0
  438. package/dist/plugins/devices-shelly-ng/platforms/shelly-ng.device.platform.d.ts +27 -1
  439. package/dist/plugins/devices-shelly-ng/platforms/shelly-ng.device.platform.js +146 -0
  440. package/dist/plugins/devices-shelly-ng/platforms/shelly-ng.device.platform.js.map +1 -1
  441. package/dist/plugins/devices-shelly-ng/services/authenticated-shelly-script-http.d.ts +16 -0
  442. package/dist/plugins/devices-shelly-ng/services/authenticated-shelly-script-http.js +154 -0
  443. package/dist/plugins/devices-shelly-ng/services/authenticated-shelly-script-http.js.map +1 -0
  444. package/dist/plugins/devices-shelly-ng/services/device-manager.service.d.ts +4 -1
  445. package/dist/plugins/devices-shelly-ng/services/device-manager.service.js +113 -4
  446. package/dist/plugins/devices-shelly-ng/services/device-manager.service.js.map +1 -1
  447. package/dist/plugins/devices-shelly-ng/services/guarded-shelly-http.d.ts +2 -0
  448. package/dist/plugins/devices-shelly-ng/services/guarded-shelly-http.js +78 -0
  449. package/dist/plugins/devices-shelly-ng/services/guarded-shelly-http.js.map +1 -0
  450. package/dist/plugins/devices-shelly-ng/services/guarded-shelly-rpc.d.ts +9 -0
  451. package/dist/plugins/devices-shelly-ng/services/guarded-shelly-rpc.js +56 -0
  452. package/dist/plugins/devices-shelly-ng/services/guarded-shelly-rpc.js.map +1 -0
  453. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-artifact.d.ts +45 -0
  454. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-artifact.js +278 -0
  455. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-artifact.js.map +1 -0
  456. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-lease.contract.d.ts +49 -0
  457. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-lease.contract.js +32 -0
  458. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-lease.contract.js.map +1 -0
  459. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-qualification.d.ts +53 -0
  460. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-qualification.js +91 -0
  461. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-qualification.js.map +1 -0
  462. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-session.d.ts +35 -0
  463. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-session.js +244 -0
  464. package/dist/plugins/devices-shelly-ng/services/remote-dew-point-session.js.map +1 -0
  465. package/dist/plugins/devices-shelly-ng/services/shelly-cover-ordering.service.d.ts +9 -0
  466. package/dist/plugins/devices-shelly-ng/services/shelly-cover-ordering.service.js +50 -0
  467. package/dist/plugins/devices-shelly-ng/services/shelly-cover-ordering.service.js.map +1 -0
  468. package/dist/plugins/devices-shelly-ng/services/shelly-cover-recovery-lane.service.d.ts +29 -0
  469. package/dist/plugins/devices-shelly-ng/services/shelly-cover-recovery-lane.service.js +166 -0
  470. package/dist/plugins/devices-shelly-ng/services/shelly-cover-recovery-lane.service.js.map +1 -0
  471. package/dist/plugins/devices-shelly-ng/services/shelly-cover-recovery.service.d.ts +21 -0
  472. package/dist/plugins/devices-shelly-ng/services/shelly-cover-recovery.service.js +207 -0
  473. package/dist/plugins/devices-shelly-ng/services/shelly-cover-recovery.service.js.map +1 -0
  474. package/dist/plugins/devices-shelly-ng/services/shelly-cover-session.d.ts +25 -0
  475. package/dist/plugins/devices-shelly-ng/services/shelly-cover-session.js +132 -0
  476. package/dist/plugins/devices-shelly-ng/services/shelly-cover-session.js.map +1 -0
  477. package/dist/plugins/devices-shelly-ng/services/shelly-cover-telemetry.d.ts +9 -0
  478. package/dist/plugins/devices-shelly-ng/services/shelly-cover-telemetry.js +63 -0
  479. package/dist/plugins/devices-shelly-ng/services/shelly-cover-telemetry.js.map +1 -0
  480. package/dist/plugins/devices-shelly-ng/services/shelly-guard-rpc-session.d.ts +33 -0
  481. package/dist/plugins/devices-shelly-ng/services/shelly-guard-rpc-session.js +191 -0
  482. package/dist/plugins/devices-shelly-ng/services/shelly-guard-rpc-session.js.map +1 -0
  483. package/dist/plugins/devices-shelly-ng/services/shelly-ng.service.d.ts +3 -0
  484. package/dist/plugins/devices-shelly-ng/services/shelly-ng.service.js +32 -4
  485. package/dist/plugins/devices-shelly-ng/services/shelly-ng.service.js.map +1 -1
  486. package/dist/plugins/devices-shelly-ng/services/shelly-sample-sources.service.d.ts +34 -0
  487. package/dist/plugins/devices-shelly-ng/services/shelly-sample-sources.service.js +194 -0
  488. package/dist/plugins/devices-shelly-ng/services/shelly-sample-sources.service.js.map +1 -0
  489. package/dist/plugins/devices-shelly-ng/services/shelly-ws-server.service.js +5 -2
  490. package/dist/plugins/devices-shelly-ng/services/shelly-ws-server.service.js.map +1 -1
  491. package/dist/plugins/devices-shelly-v1/platforms/shelly-v1.device.platform.d.ts +4 -0
  492. package/dist/plugins/devices-shelly-v1/platforms/shelly-v1.device.platform.js +3 -0
  493. package/dist/plugins/devices-shelly-v1/platforms/shelly-v1.device.platform.js.map +1 -1
  494. package/dist/plugins/devices-virtual/contracts/thermostat-actuation.contract.d.ts +114 -0
  495. package/dist/plugins/devices-virtual/contracts/thermostat-actuation.contract.js +12 -0
  496. package/dist/plugins/devices-virtual/contracts/thermostat-actuation.contract.js.map +1 -0
  497. package/dist/plugins/devices-virtual/contracts/thermostat-command.contract.d.ts +4 -0
  498. package/dist/plugins/devices-virtual/contracts/thermostat-command.contract.js +3 -0
  499. package/dist/plugins/devices-virtual/contracts/thermostat-command.contract.js.map +1 -0
  500. package/dist/plugins/devices-virtual/controllers/native-thermostat.controller.d.ts +15 -0
  501. package/dist/plugins/devices-virtual/controllers/native-thermostat.controller.js +178 -0
  502. package/dist/plugins/devices-virtual/controllers/native-thermostat.controller.js.map +1 -0
  503. package/dist/plugins/devices-virtual/controllers/thermostat-authoring-context.controller.d.ts +11 -0
  504. package/dist/plugins/devices-virtual/controllers/thermostat-authoring-context.controller.js +92 -0
  505. package/dist/plugins/devices-virtual/controllers/thermostat-authoring-context.controller.js.map +1 -0
  506. package/dist/plugins/devices-virtual/controllers/thermostat-installation.controller.d.ts +16 -0
  507. package/dist/plugins/devices-virtual/controllers/thermostat-installation.controller.js +179 -0
  508. package/dist/plugins/devices-virtual/controllers/thermostat-installation.controller.js.map +1 -0
  509. package/dist/plugins/devices-virtual/controllers/virtual-dew-point-config.controller.d.ts +11 -0
  510. package/dist/plugins/devices-virtual/controllers/virtual-dew-point-config.controller.js +100 -0
  511. package/dist/plugins/devices-virtual/controllers/virtual-dew-point-config.controller.js.map +1 -0
  512. package/dist/plugins/devices-virtual/controllers/virtual-measurement-authoring.controller.d.ts +19 -0
  513. package/dist/plugins/devices-virtual/controllers/virtual-measurement-authoring.controller.js +168 -0
  514. package/dist/plugins/devices-virtual/controllers/virtual-measurement-authoring.controller.js.map +1 -0
  515. package/dist/plugins/devices-virtual/controllers/virtual-producer-config.controller.d.ts +28 -0
  516. package/dist/plugins/devices-virtual/controllers/virtual-producer-config.controller.js +278 -0
  517. package/dist/plugins/devices-virtual/controllers/virtual-producer-config.controller.js.map +1 -0
  518. package/dist/plugins/devices-virtual/controllers/virtual-thermostat-authoring.controller.d.ts +12 -0
  519. package/dist/plugins/devices-virtual/controllers/virtual-thermostat-authoring.controller.js +111 -0
  520. package/dist/plugins/devices-virtual/controllers/virtual-thermostat-authoring.controller.js.map +1 -0
  521. package/dist/plugins/devices-virtual/controllers/virtual-thermostat-comfort.controller.d.ts +14 -0
  522. package/dist/plugins/devices-virtual/controllers/virtual-thermostat-comfort.controller.js +160 -0
  523. package/dist/plugins/devices-virtual/controllers/virtual-thermostat-comfort.controller.js.map +1 -0
  524. package/dist/plugins/devices-virtual/controllers/virtual-thermostat-config.controller.d.ts +18 -0
  525. package/dist/plugins/devices-virtual/controllers/virtual-thermostat-config.controller.js +196 -0
  526. package/dist/plugins/devices-virtual/controllers/virtual-thermostat-config.controller.js.map +1 -0
  527. package/dist/plugins/devices-virtual/controllers/virtual-transform-config.controller.d.ts +14 -0
  528. package/dist/plugins/devices-virtual/controllers/virtual-transform-config.controller.js +128 -0
  529. package/dist/plugins/devices-virtual/controllers/virtual-transform-config.controller.js.map +1 -0
  530. package/dist/plugins/devices-virtual/devices-virtual.constants.d.ts +1 -0
  531. package/dist/plugins/devices-virtual/devices-virtual.constants.js +2 -1
  532. package/dist/plugins/devices-virtual/devices-virtual.constants.js.map +1 -1
  533. package/dist/plugins/devices-virtual/devices-virtual.openapi.d.ts +24 -2
  534. package/dist/plugins/devices-virtual/devices-virtual.openapi.js +95 -0
  535. package/dist/plugins/devices-virtual/devices-virtual.openapi.js.map +1 -1
  536. package/dist/plugins/devices-virtual/devices-virtual.plugin.d.ts +7 -1
  537. package/dist/plugins/devices-virtual/devices-virtual.plugin.js +167 -10
  538. package/dist/plugins/devices-virtual/devices-virtual.plugin.js.map +1 -1
  539. package/dist/plugins/devices-virtual/dto/create-device.dto.d.ts +2 -0
  540. package/dist/plugins/devices-virtual/dto/create-device.dto.js +20 -0
  541. package/dist/plugins/devices-virtual/dto/create-device.dto.js.map +1 -1
  542. package/dist/plugins/devices-virtual/dto/dew-point-config.dto.d.ts +14 -0
  543. package/dist/plugins/devices-virtual/dto/dew-point-config.dto.js +119 -0
  544. package/dist/plugins/devices-virtual/dto/dew-point-config.dto.js.map +1 -0
  545. package/dist/plugins/devices-virtual/dto/group-catalog.dto.d.ts +8 -0
  546. package/dist/plugins/devices-virtual/dto/group-catalog.dto.js +62 -0
  547. package/dist/plugins/devices-virtual/dto/group-catalog.dto.js.map +1 -0
  548. package/dist/plugins/devices-virtual/dto/light-group-draft.dto.d.ts +19 -0
  549. package/dist/plugins/devices-virtual/dto/light-group-draft.dto.js +108 -0
  550. package/dist/plugins/devices-virtual/dto/light-group-draft.dto.js.map +1 -0
  551. package/dist/plugins/devices-virtual/dto/measurement-authoring.dto.d.ts +25 -0
  552. package/dist/plugins/devices-virtual/dto/measurement-authoring.dto.js +157 -0
  553. package/dist/plugins/devices-virtual/dto/measurement-authoring.dto.js.map +1 -0
  554. package/dist/plugins/devices-virtual/dto/native-thermostat.dto.d.ts +21 -0
  555. package/dist/plugins/devices-virtual/dto/native-thermostat.dto.js +122 -0
  556. package/dist/plugins/devices-virtual/dto/native-thermostat.dto.js.map +1 -0
  557. package/dist/plugins/devices-virtual/dto/producer-config.dto.d.ts +35 -0
  558. package/dist/plugins/devices-virtual/dto/producer-config.dto.js +290 -0
  559. package/dist/plugins/devices-virtual/dto/producer-config.dto.js.map +1 -0
  560. package/dist/plugins/devices-virtual/dto/thermostat-authoring.dto.d.ts +6 -0
  561. package/dist/plugins/devices-virtual/dto/thermostat-authoring.dto.js +46 -0
  562. package/dist/plugins/devices-virtual/dto/thermostat-authoring.dto.js.map +1 -0
  563. package/dist/plugins/devices-virtual/dto/thermostat-comfort.dto.d.ts +39 -0
  564. package/dist/plugins/devices-virtual/dto/thermostat-comfort.dto.js +244 -0
  565. package/dist/plugins/devices-virtual/dto/thermostat-comfort.dto.js.map +1 -0
  566. package/dist/plugins/devices-virtual/dto/thermostat-config.dto.d.ts +94 -0
  567. package/dist/plugins/devices-virtual/dto/thermostat-config.dto.js +718 -0
  568. package/dist/plugins/devices-virtual/dto/thermostat-config.dto.js.map +1 -0
  569. package/dist/plugins/devices-virtual/dto/thermostat-installation.dto.d.ts +71 -0
  570. package/dist/plugins/devices-virtual/dto/thermostat-installation.dto.js +410 -0
  571. package/dist/plugins/devices-virtual/dto/thermostat-installation.dto.js.map +1 -0
  572. package/dist/plugins/devices-virtual/dto/transform-config.dto.d.ts +71 -0
  573. package/dist/plugins/devices-virtual/dto/transform-config.dto.js +430 -0
  574. package/dist/plugins/devices-virtual/dto/transform-config.dto.js.map +1 -0
  575. package/dist/plugins/devices-virtual/dto/update-device.dto.d.ts +2 -0
  576. package/dist/plugins/devices-virtual/dto/update-device.dto.js +20 -0
  577. package/dist/plugins/devices-virtual/dto/update-device.dto.js.map +1 -1
  578. package/dist/plugins/devices-virtual/entities/devices-virtual.entity.d.ts +13 -1
  579. package/dist/plugins/devices-virtual/entities/devices-virtual.entity.js +56 -6
  580. package/dist/plugins/devices-virtual/entities/devices-virtual.entity.js.map +1 -1
  581. package/dist/plugins/devices-virtual/entities/native-thermostat.entity.d.ts +23 -0
  582. package/dist/plugins/devices-virtual/entities/native-thermostat.entity.js +103 -0
  583. package/dist/plugins/devices-virtual/entities/native-thermostat.entity.js.map +1 -0
  584. package/dist/plugins/devices-virtual/entities/thermostat-cooling-dependency.entity.d.ts +19 -0
  585. package/dist/plugins/devices-virtual/entities/thermostat-cooling-dependency.entity.js +87 -0
  586. package/dist/plugins/devices-virtual/entities/thermostat-cooling-dependency.entity.js.map +1 -0
  587. package/dist/plugins/devices-virtual/entities/thermostat-installation.entity.d.ts +36 -0
  588. package/dist/plugins/devices-virtual/entities/thermostat-installation.entity.js +125 -0
  589. package/dist/plugins/devices-virtual/entities/thermostat-installation.entity.js.map +1 -0
  590. package/dist/plugins/devices-virtual/entities/thermostat-member-protection.entity.d.ts +15 -0
  591. package/dist/plugins/devices-virtual/entities/thermostat-member-protection.entity.js +70 -0
  592. package/dist/plugins/devices-virtual/entities/thermostat-member-protection.entity.js.map +1 -0
  593. package/dist/plugins/devices-virtual/entities/thermostat-override-clock.entity.d.ts +7 -0
  594. package/dist/plugins/devices-virtual/entities/thermostat-override-clock.entity.js +39 -0
  595. package/dist/plugins/devices-virtual/entities/thermostat-override-clock.entity.js.map +1 -0
  596. package/dist/plugins/devices-virtual/entities/virtual-dew-point.entity.d.ts +28 -0
  597. package/dist/plugins/devices-virtual/entities/virtual-dew-point.entity.js +104 -0
  598. package/dist/plugins/devices-virtual/entities/virtual-dew-point.entity.js.map +1 -0
  599. package/dist/plugins/devices-virtual/entities/virtual-producer.entity.d.ts +89 -0
  600. package/dist/plugins/devices-virtual/entities/virtual-producer.entity.js +281 -0
  601. package/dist/plugins/devices-virtual/entities/virtual-producer.entity.js.map +1 -0
  602. package/dist/plugins/devices-virtual/entities/virtual-thermostat-runtime.entity.d.ts +45 -0
  603. package/dist/plugins/devices-virtual/entities/virtual-thermostat-runtime.entity.js +184 -0
  604. package/dist/plugins/devices-virtual/entities/virtual-thermostat-runtime.entity.js.map +1 -0
  605. package/dist/plugins/devices-virtual/entities/virtual-thermostat.entity.d.ts +86 -0
  606. package/dist/plugins/devices-virtual/entities/virtual-thermostat.entity.js +337 -0
  607. package/dist/plugins/devices-virtual/entities/virtual-thermostat.entity.js.map +1 -0
  608. package/dist/plugins/devices-virtual/entities/virtual-transform.entity.d.ts +23 -0
  609. package/dist/plugins/devices-virtual/entities/virtual-transform.entity.js +101 -0
  610. package/dist/plugins/devices-virtual/entities/virtual-transform.entity.js.map +1 -0
  611. package/dist/plugins/devices-virtual/listeners/virtual-device-information.listener.d.ts +5 -0
  612. package/dist/plugins/devices-virtual/listeners/virtual-device-information.listener.js +65 -22
  613. package/dist/plugins/devices-virtual/listeners/virtual-device-information.listener.js.map +1 -1
  614. package/dist/plugins/devices-virtual/listeners/virtual-index-maintenance.listener.d.ts +8 -1
  615. package/dist/plugins/devices-virtual/listeners/virtual-index-maintenance.listener.js +123 -32
  616. package/dist/plugins/devices-virtual/listeners/virtual-index-maintenance.listener.js.map +1 -1
  617. package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.d.ts +3 -0
  618. package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.js +41 -3
  619. package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.js.map +1 -1
  620. package/dist/plugins/devices-virtual/listeners/virtual-status.listener.js +28 -15
  621. package/dist/plugins/devices-virtual/listeners/virtual-status.listener.js.map +1 -1
  622. package/dist/plugins/devices-virtual/models/dew-point-response.model.d.ts +38 -0
  623. package/dist/plugins/devices-virtual/models/dew-point-response.model.js +193 -0
  624. package/dist/plugins/devices-virtual/models/dew-point-response.model.js.map +1 -0
  625. package/dist/plugins/devices-virtual/models/group-catalog.model.d.ts +26 -0
  626. package/dist/plugins/devices-virtual/models/group-catalog.model.js +117 -0
  627. package/dist/plugins/devices-virtual/models/group-catalog.model.js.map +1 -0
  628. package/dist/plugins/devices-virtual/models/light-group-draft.model.d.ts +28 -0
  629. package/dist/plugins/devices-virtual/models/light-group-draft.model.js +122 -0
  630. package/dist/plugins/devices-virtual/models/light-group-draft.model.js.map +1 -0
  631. package/dist/plugins/devices-virtual/models/measurement-authoring-response.model.d.ts +26 -0
  632. package/dist/plugins/devices-virtual/models/measurement-authoring-response.model.js +125 -0
  633. package/dist/plugins/devices-virtual/models/measurement-authoring-response.model.js.map +1 -0
  634. package/dist/plugins/devices-virtual/models/native-thermostat-response.model.d.ts +84 -0
  635. package/dist/plugins/devices-virtual/models/native-thermostat-response.model.js +406 -0
  636. package/dist/plugins/devices-virtual/models/native-thermostat-response.model.js.map +1 -0
  637. package/dist/plugins/devices-virtual/models/numeric-operator.model.d.ts +23 -0
  638. package/dist/plugins/devices-virtual/models/numeric-operator.model.js +120 -0
  639. package/dist/plugins/devices-virtual/models/numeric-operator.model.js.map +1 -0
  640. package/dist/plugins/devices-virtual/models/producer-response.model.d.ts +138 -0
  641. package/dist/plugins/devices-virtual/models/producer-response.model.js +764 -0
  642. package/dist/plugins/devices-virtual/models/producer-response.model.js.map +1 -0
  643. package/dist/plugins/devices-virtual/models/thermostat-authoring-context.model.d.ts +22 -0
  644. package/dist/plugins/devices-virtual/models/thermostat-authoring-context.model.js +134 -0
  645. package/dist/plugins/devices-virtual/models/thermostat-authoring-context.model.js.map +1 -0
  646. package/dist/plugins/devices-virtual/models/thermostat-authoring-response.model.d.ts +18 -0
  647. package/dist/plugins/devices-virtual/models/thermostat-authoring-response.model.js +87 -0
  648. package/dist/plugins/devices-virtual/models/thermostat-authoring-response.model.js.map +1 -0
  649. package/dist/plugins/devices-virtual/models/thermostat-comfort-response.model.d.ts +60 -0
  650. package/dist/plugins/devices-virtual/models/thermostat-comfort-response.model.js +341 -0
  651. package/dist/plugins/devices-virtual/models/thermostat-comfort-response.model.js.map +1 -0
  652. package/dist/plugins/devices-virtual/models/thermostat-installation-response.model.d.ts +84 -0
  653. package/dist/plugins/devices-virtual/models/thermostat-installation-response.model.js +440 -0
  654. package/dist/plugins/devices-virtual/models/thermostat-installation-response.model.js.map +1 -0
  655. package/dist/plugins/devices-virtual/models/thermostat-response.model.d.ts +218 -0
  656. package/dist/plugins/devices-virtual/models/thermostat-response.model.js +1157 -0
  657. package/dist/plugins/devices-virtual/models/thermostat-response.model.js.map +1 -0
  658. package/dist/plugins/devices-virtual/models/transform-response.model.d.ts +73 -0
  659. package/dist/plugins/devices-virtual/models/transform-response.model.js +386 -0
  660. package/dist/plugins/devices-virtual/models/transform-response.model.js.map +1 -0
  661. package/dist/plugins/devices-virtual/platforms/virtual-device.platform.d.ts +5 -1
  662. package/dist/plugins/devices-virtual/platforms/virtual-device.platform.js +22 -3
  663. package/dist/plugins/devices-virtual/platforms/virtual-device.platform.js.map +1 -1
  664. package/dist/plugins/devices-virtual/services/native-thermostat.service.d.ts +72 -0
  665. package/dist/plugins/devices-virtual/services/native-thermostat.service.js +932 -0
  666. package/dist/plugins/devices-virtual/services/native-thermostat.service.js.map +1 -0
  667. package/dist/plugins/devices-virtual/services/thermostat-authoring-context.service.d.ts +14 -0
  668. package/dist/plugins/devices-virtual/services/thermostat-authoring-context.service.js +147 -0
  669. package/dist/plugins/devices-virtual/services/thermostat-authoring-context.service.js.map +1 -0
  670. package/dist/plugins/devices-virtual/services/thermostat-comfort-selection.d.ts +199 -0
  671. package/dist/plugins/devices-virtual/services/thermostat-comfort-selection.js +1064 -0
  672. package/dist/plugins/devices-virtual/services/thermostat-comfort-selection.js.map +1 -0
  673. package/dist/plugins/devices-virtual/services/thermostat-controller-mutation.d.ts +75 -0
  674. package/dist/plugins/devices-virtual/services/thermostat-controller-mutation.js +445 -0
  675. package/dist/plugins/devices-virtual/services/thermostat-controller-mutation.js.map +1 -0
  676. package/dist/plugins/devices-virtual/services/thermostat-cooling-dependency.service.d.ts +53 -0
  677. package/dist/plugins/devices-virtual/services/thermostat-cooling-dependency.service.js +267 -0
  678. package/dist/plugins/devices-virtual/services/thermostat-cooling-dependency.service.js.map +1 -0
  679. package/dist/plugins/devices-virtual/services/thermostat-creation-catalog.d.ts +56 -0
  680. package/dist/plugins/devices-virtual/services/thermostat-creation-catalog.js +438 -0
  681. package/dist/plugins/devices-virtual/services/thermostat-creation-catalog.js.map +1 -0
  682. package/dist/plugins/devices-virtual/services/thermostat-creation-response.d.ts +37 -0
  683. package/dist/plugins/devices-virtual/services/thermostat-creation-response.js +430 -0
  684. package/dist/plugins/devices-virtual/services/thermostat-creation-response.js.map +1 -0
  685. package/dist/plugins/devices-virtual/services/thermostat-installation-artifact.d.ts +13 -0
  686. package/dist/plugins/devices-virtual/services/thermostat-installation-artifact.js +263 -0
  687. package/dist/plugins/devices-virtual/services/thermostat-installation-artifact.js.map +1 -0
  688. package/dist/plugins/devices-virtual/services/thermostat-installation-bindings.service.d.ts +10 -0
  689. package/dist/plugins/devices-virtual/services/thermostat-installation-bindings.service.js +238 -0
  690. package/dist/plugins/devices-virtual/services/thermostat-installation-bindings.service.js.map +1 -0
  691. package/dist/plugins/devices-virtual/services/thermostat-installation-loader.service.d.ts +41 -0
  692. package/dist/plugins/devices-virtual/services/thermostat-installation-loader.service.js +350 -0
  693. package/dist/plugins/devices-virtual/services/thermostat-installation-loader.service.js.map +1 -0
  694. package/dist/plugins/devices-virtual/services/thermostat-installation.service.d.ts +40 -0
  695. package/dist/plugins/devices-virtual/services/thermostat-installation.service.js +263 -0
  696. package/dist/plugins/devices-virtual/services/thermostat-installation.service.js.map +1 -0
  697. package/dist/plugins/devices-virtual/services/thermostat-installation.types.d.ts +72 -0
  698. package/dist/plugins/devices-virtual/services/thermostat-installation.types.js +13 -0
  699. package/dist/plugins/devices-virtual/services/thermostat-installation.types.js.map +1 -0
  700. package/dist/plugins/devices-virtual/services/thermostat-member-protection.service.d.ts +45 -0
  701. package/dist/plugins/devices-virtual/services/thermostat-member-protection.service.js +235 -0
  702. package/dist/plugins/devices-virtual/services/thermostat-member-protection.service.js.map +1 -0
  703. package/dist/plugins/devices-virtual/services/thermostat-override-clock.sql.d.ts +1 -0
  704. package/dist/plugins/devices-virtual/services/thermostat-override-clock.sql.js +16 -0
  705. package/dist/plugins/devices-virtual/services/thermostat-override-clock.sql.js.map +1 -0
  706. package/dist/plugins/devices-virtual/services/thermostat-protection-source.utils.d.ts +27 -0
  707. package/dist/plugins/devices-virtual/services/thermostat-protection-source.utils.js +132 -0
  708. package/dist/plugins/devices-virtual/services/thermostat-protection-source.utils.js.map +1 -0
  709. package/dist/plugins/devices-virtual/services/thermostat-remote-cooling-adapter.d.ts +88 -0
  710. package/dist/plugins/devices-virtual/services/thermostat-remote-cooling-adapter.js +200 -0
  711. package/dist/plugins/devices-virtual/services/thermostat-remote-cooling-adapter.js.map +1 -0
  712. package/dist/plugins/devices-virtual/services/virtual-aggregate-evaluator.d.ts +35 -0
  713. package/dist/plugins/devices-virtual/services/virtual-aggregate-evaluator.js +200 -0
  714. package/dist/plugins/devices-virtual/services/virtual-aggregate-evaluator.js.map +1 -0
  715. package/dist/plugins/devices-virtual/services/virtual-aggregate-policy.utils.d.ts +5 -0
  716. package/dist/plugins/devices-virtual/services/virtual-aggregate-policy.utils.js +18 -0
  717. package/dist/plugins/devices-virtual/services/virtual-aggregate-policy.utils.js.map +1 -0
  718. package/dist/plugins/devices-virtual/services/virtual-aggregate-runtime.service.d.ts +48 -0
  719. package/dist/plugins/devices-virtual/services/virtual-aggregate-runtime.service.js +425 -0
  720. package/dist/plugins/devices-virtual/services/virtual-aggregate-runtime.service.js.map +1 -0
  721. package/dist/plugins/devices-virtual/services/virtual-cooling-policy.utils.d.ts +13 -0
  722. package/dist/plugins/devices-virtual/services/virtual-cooling-policy.utils.js +38 -0
  723. package/dist/plugins/devices-virtual/services/virtual-cooling-policy.utils.js.map +1 -0
  724. package/dist/plugins/devices-virtual/services/virtual-cover-contract.utils.d.ts +7 -0
  725. package/dist/plugins/devices-virtual/services/virtual-cover-contract.utils.js +41 -0
  726. package/dist/plugins/devices-virtual/services/virtual-cover-contract.utils.js.map +1 -0
  727. package/dist/plugins/devices-virtual/services/virtual-cover-readiness.utils.d.ts +16 -0
  728. package/dist/plugins/devices-virtual/services/virtual-cover-readiness.utils.js +42 -0
  729. package/dist/plugins/devices-virtual/services/virtual-cover-readiness.utils.js.map +1 -0
  730. package/dist/plugins/devices-virtual/services/virtual-dependency-graph.service.d.ts +118 -0
  731. package/dist/plugins/devices-virtual/services/virtual-dependency-graph.service.js +667 -0
  732. package/dist/plugins/devices-virtual/services/virtual-dependency-graph.service.js.map +1 -0
  733. package/dist/plugins/devices-virtual/services/virtual-devices.service.d.ts +8 -4
  734. package/dist/plugins/devices-virtual/services/virtual-devices.service.js +105 -22
  735. package/dist/plugins/devices-virtual/services/virtual-devices.service.js.map +1 -1
  736. package/dist/plugins/devices-virtual/services/virtual-dew-point-config.service.d.ts +28 -0
  737. package/dist/plugins/devices-virtual/services/virtual-dew-point-config.service.js +193 -0
  738. package/dist/plugins/devices-virtual/services/virtual-dew-point-config.service.js.map +1 -0
  739. package/dist/plugins/devices-virtual/services/virtual-dew-point-contract.utils.d.ts +5 -0
  740. package/dist/plugins/devices-virtual/services/virtual-dew-point-contract.utils.js +69 -0
  741. package/dist/plugins/devices-virtual/services/virtual-dew-point-contract.utils.js.map +1 -0
  742. package/dist/plugins/devices-virtual/services/virtual-dew-point-runtime.service.d.ts +65 -0
  743. package/dist/plugins/devices-virtual/services/virtual-dew-point-runtime.service.js +524 -0
  744. package/dist/plugins/devices-virtual/services/virtual-dew-point-runtime.service.js.map +1 -0
  745. package/dist/plugins/devices-virtual/services/virtual-dew-point.utils.d.ts +9 -0
  746. package/dist/plugins/devices-virtual/services/virtual-dew-point.utils.js +25 -0
  747. package/dist/plugins/devices-virtual/services/virtual-dew-point.utils.js.map +1 -0
  748. package/dist/plugins/devices-virtual/services/virtual-group-catalog.service.d.ts +10 -0
  749. package/dist/plugins/devices-virtual/services/virtual-group-catalog.service.js +117 -0
  750. package/dist/plugins/devices-virtual/services/virtual-group-catalog.service.js.map +1 -0
  751. package/dist/plugins/devices-virtual/services/virtual-group-contract.utils.d.ts +4 -0
  752. package/dist/plugins/devices-virtual/services/virtual-group-contract.utils.js +35 -0
  753. package/dist/plugins/devices-virtual/services/virtual-group-contract.utils.js.map +1 -0
  754. package/dist/plugins/devices-virtual/services/virtual-group-field.utils.d.ts +10 -0
  755. package/dist/plugins/devices-virtual/services/virtual-group-field.utils.js +35 -0
  756. package/dist/plugins/devices-virtual/services/virtual-group-field.utils.js.map +1 -0
  757. package/dist/plugins/devices-virtual/services/virtual-group-profile.d.ts +19 -0
  758. package/dist/plugins/devices-virtual/services/virtual-group-profile.js +137 -0
  759. package/dist/plugins/devices-virtual/services/virtual-group-profile.js.map +1 -0
  760. package/dist/plugins/devices-virtual/services/virtual-light-group-authoring.service.d.ts +43 -0
  761. package/dist/plugins/devices-virtual/services/virtual-light-group-authoring.service.js +217 -0
  762. package/dist/plugins/devices-virtual/services/virtual-light-group-authoring.service.js.map +1 -0
  763. package/dist/plugins/devices-virtual/services/virtual-light-group-command.service.d.ts +28 -0
  764. package/dist/plugins/devices-virtual/services/virtual-light-group-command.service.js +262 -0
  765. package/dist/plugins/devices-virtual/services/virtual-light-group-command.service.js.map +1 -0
  766. package/dist/plugins/devices-virtual/services/virtual-light-group-contribution.service.d.ts +19 -0
  767. package/dist/plugins/devices-virtual/services/virtual-light-group-contribution.service.js +91 -0
  768. package/dist/plugins/devices-virtual/services/virtual-light-group-contribution.service.js.map +1 -0
  769. package/dist/plugins/devices-virtual/services/virtual-light-group-state.service.d.ts +37 -0
  770. package/dist/plugins/devices-virtual/services/virtual-light-group-state.service.js +346 -0
  771. package/dist/plugins/devices-virtual/services/virtual-light-group-state.service.js.map +1 -0
  772. package/dist/plugins/devices-virtual/services/virtual-light-group.utils.d.ts +46 -0
  773. package/dist/plugins/devices-virtual/services/virtual-light-group.utils.js +204 -0
  774. package/dist/plugins/devices-virtual/services/virtual-light-group.utils.js.map +1 -0
  775. package/dist/plugins/devices-virtual/services/virtual-measurement-authoring.service.d.ts +37 -0
  776. package/dist/plugins/devices-virtual/services/virtual-measurement-authoring.service.js +270 -0
  777. package/dist/plugins/devices-virtual/services/virtual-measurement-authoring.service.js.map +1 -0
  778. package/dist/plugins/devices-virtual/services/virtual-measurement-contribution.service.d.ts +21 -0
  779. package/dist/plugins/devices-virtual/services/virtual-measurement-contribution.service.js +166 -0
  780. package/dist/plugins/devices-virtual/services/virtual-measurement-contribution.service.js.map +1 -0
  781. package/dist/plugins/devices-virtual/services/virtual-measurement-metadata.utils.d.ts +3 -0
  782. package/dist/plugins/devices-virtual/services/virtual-measurement-metadata.utils.js +25 -0
  783. package/dist/plugins/devices-virtual/services/virtual-measurement-metadata.utils.js.map +1 -0
  784. package/dist/plugins/devices-virtual/services/virtual-numeric-operator-host.service.d.ts +24 -0
  785. package/dist/plugins/devices-virtual/services/virtual-numeric-operator-host.service.js +145 -0
  786. package/dist/plugins/devices-virtual/services/virtual-numeric-operator-host.service.js.map +1 -0
  787. package/dist/plugins/devices-virtual/services/virtual-numeric-operator.registry.d.ts +18 -0
  788. package/dist/plugins/devices-virtual/services/virtual-numeric-operator.registry.js +86 -0
  789. package/dist/plugins/devices-virtual/services/virtual-numeric-operator.registry.js.map +1 -0
  790. package/dist/plugins/devices-virtual/services/virtual-numeric-profile.utils.d.ts +29 -0
  791. package/dist/plugins/devices-virtual/services/virtual-numeric-profile.utils.js +136 -0
  792. package/dist/plugins/devices-virtual/services/virtual-numeric-profile.utils.js.map +1 -0
  793. package/dist/plugins/devices-virtual/services/virtual-numeric-transform.utils.d.ts +59 -0
  794. package/dist/plugins/devices-virtual/services/virtual-numeric-transform.utils.js +165 -0
  795. package/dist/plugins/devices-virtual/services/virtual-numeric-transform.utils.js.map +1 -0
  796. package/dist/plugins/devices-virtual/services/virtual-producer-config.service.d.ts +64 -0
  797. package/dist/plugins/devices-virtual/services/virtual-producer-config.service.js +694 -0
  798. package/dist/plugins/devices-virtual/services/virtual-producer-config.service.js.map +1 -0
  799. package/dist/plugins/devices-virtual/services/virtual-producer-state.service.d.ts +60 -0
  800. package/dist/plugins/devices-virtual/services/virtual-producer-state.service.js +484 -0
  801. package/dist/plugins/devices-virtual/services/virtual-producer-state.service.js.map +1 -0
  802. package/dist/plugins/devices-virtual/services/virtual-property-index.service.d.ts +11 -2
  803. package/dist/plugins/devices-virtual/services/virtual-property-index.service.js +166 -13
  804. package/dist/plugins/devices-virtual/services/virtual-property-index.service.js.map +1 -1
  805. package/dist/plugins/devices-virtual/services/virtual-source-eligibility.utils.d.ts +3 -0
  806. package/dist/plugins/devices-virtual/services/virtual-source-eligibility.utils.js +10 -0
  807. package/dist/plugins/devices-virtual/services/virtual-source-eligibility.utils.js.map +1 -0
  808. package/dist/plugins/devices-virtual/services/virtual-thermostat-authoring.service.d.ts +27 -0
  809. package/dist/plugins/devices-virtual/services/virtual-thermostat-authoring.service.js +385 -0
  810. package/dist/plugins/devices-virtual/services/virtual-thermostat-authoring.service.js.map +1 -0
  811. package/dist/plugins/devices-virtual/services/virtual-thermostat-automation.service.d.ts +90 -0
  812. package/dist/plugins/devices-virtual/services/virtual-thermostat-automation.service.js +1189 -0
  813. package/dist/plugins/devices-virtual/services/virtual-thermostat-automation.service.js.map +1 -0
  814. package/dist/plugins/devices-virtual/services/virtual-thermostat-branch.utils.d.ts +5 -0
  815. package/dist/plugins/devices-virtual/services/virtual-thermostat-branch.utils.js +29 -0
  816. package/dist/plugins/devices-virtual/services/virtual-thermostat-branch.utils.js.map +1 -0
  817. package/dist/plugins/devices-virtual/services/virtual-thermostat-claims.service.d.ts +80 -0
  818. package/dist/plugins/devices-virtual/services/virtual-thermostat-claims.service.js +489 -0
  819. package/dist/plugins/devices-virtual/services/virtual-thermostat-claims.service.js.map +1 -0
  820. package/dist/plugins/devices-virtual/services/virtual-thermostat-comfort.service.d.ts +80 -0
  821. package/dist/plugins/devices-virtual/services/virtual-thermostat-comfort.service.js +580 -0
  822. package/dist/plugins/devices-virtual/services/virtual-thermostat-comfort.service.js.map +1 -0
  823. package/dist/plugins/devices-virtual/services/virtual-thermostat-comfort.utils.d.ts +58 -0
  824. package/dist/plugins/devices-virtual/services/virtual-thermostat-comfort.utils.js +106 -0
  825. package/dist/plugins/devices-virtual/services/virtual-thermostat-comfort.utils.js.map +1 -0
  826. package/dist/plugins/devices-virtual/services/virtual-thermostat-config.service.d.ts +909 -0
  827. package/dist/plugins/devices-virtual/services/virtual-thermostat-config.service.js +1171 -0
  828. package/dist/plugins/devices-virtual/services/virtual-thermostat-config.service.js.map +1 -0
  829. package/dist/plugins/devices-virtual/services/virtual-thermostat-contract.utils.d.ts +5 -0
  830. package/dist/plugins/devices-virtual/services/virtual-thermostat-contract.utils.js +51 -0
  831. package/dist/plugins/devices-virtual/services/virtual-thermostat-contract.utils.js.map +1 -0
  832. package/dist/plugins/devices-virtual/services/virtual-thermostat-inputs.service.d.ts +46 -0
  833. package/dist/plugins/devices-virtual/services/virtual-thermostat-inputs.service.js +166 -0
  834. package/dist/plugins/devices-virtual/services/virtual-thermostat-inputs.service.js.map +1 -0
  835. package/dist/plugins/devices-virtual/services/virtual-thermostat-ownership.sql.d.ts +4 -0
  836. package/dist/plugins/devices-virtual/services/virtual-thermostat-ownership.sql.js +59 -0
  837. package/dist/plugins/devices-virtual/services/virtual-thermostat-ownership.sql.js.map +1 -0
  838. package/dist/plugins/devices-virtual/services/virtual-thermostat-policy.utils.d.ts +45 -0
  839. package/dist/plugins/devices-virtual/services/virtual-thermostat-policy.utils.js +149 -0
  840. package/dist/plugins/devices-virtual/services/virtual-thermostat-policy.utils.js.map +1 -0
  841. package/dist/plugins/devices-virtual/services/virtual-thermostat-runtime-ownership.d.ts +56 -0
  842. package/dist/plugins/devices-virtual/services/virtual-thermostat-runtime-ownership.js +680 -0
  843. package/dist/plugins/devices-virtual/services/virtual-thermostat-runtime-ownership.js.map +1 -0
  844. package/dist/plugins/devices-virtual/services/virtual-thermostat-runtime.service.d.ts +133 -0
  845. package/dist/plugins/devices-virtual/services/virtual-thermostat-runtime.service.js +1617 -0
  846. package/dist/plugins/devices-virtual/services/virtual-thermostat-runtime.service.js.map +1 -0
  847. package/dist/plugins/devices-virtual/services/virtual-thermostat-transport.service.d.ts +39 -0
  848. package/dist/plugins/devices-virtual/services/virtual-thermostat-transport.service.js +561 -0
  849. package/dist/plugins/devices-virtual/services/virtual-thermostat-transport.service.js.map +1 -0
  850. package/dist/plugins/devices-virtual/services/virtual-transform-config.service.d.ts +41 -0
  851. package/dist/plugins/devices-virtual/services/virtual-transform-config.service.js +209 -0
  852. package/dist/plugins/devices-virtual/services/virtual-transform-config.service.js.map +1 -0
  853. package/dist/plugins/devices-virtual/services/virtual-transform-contract.utils.d.ts +8 -0
  854. package/dist/plugins/devices-virtual/services/virtual-transform-contract.utils.js +103 -0
  855. package/dist/plugins/devices-virtual/services/virtual-transform-contract.utils.js.map +1 -0
  856. package/dist/plugins/devices-virtual/services/virtual-transform-preview.utils.d.ts +3 -0
  857. package/dist/plugins/devices-virtual/services/virtual-transform-preview.utils.js +18 -0
  858. package/dist/plugins/devices-virtual/services/virtual-transform-preview.utils.js.map +1 -0
  859. package/dist/plugins/devices-virtual/services/virtual-transform-resolver.d.ts +15 -0
  860. package/dist/plugins/devices-virtual/services/virtual-transform-resolver.js +102 -0
  861. package/dist/plugins/devices-virtual/services/virtual-transform-resolver.js.map +1 -0
  862. package/dist/plugins/devices-virtual/services/virtual-transform-runtime.service.d.ts +54 -0
  863. package/dist/plugins/devices-virtual/services/virtual-transform-runtime.service.js +470 -0
  864. package/dist/plugins/devices-virtual/services/virtual-transform-runtime.service.js.map +1 -0
  865. package/dist/plugins/devices-virtual/services/virtual-typed-group.utils.d.ts +6 -0
  866. package/dist/plugins/devices-virtual/services/virtual-typed-group.utils.js +100 -0
  867. package/dist/plugins/devices-virtual/services/virtual-typed-group.utils.js.map +1 -0
  868. package/dist/plugins/devices-virtual/services/virtual-value-source.service.d.ts +7 -0
  869. package/dist/plugins/devices-virtual/services/virtual-value-source.service.js +36 -2
  870. package/dist/plugins/devices-virtual/services/virtual-value-source.service.js.map +1 -1
  871. package/dist/plugins/devices-virtual/services/virtual-window-contact.utils.d.ts +17 -0
  872. package/dist/plugins/devices-virtual/services/virtual-window-contact.utils.js +52 -0
  873. package/dist/plugins/devices-virtual/services/virtual-window-contact.utils.js.map +1 -0
  874. package/dist/plugins/devices-virtual/services/virtual-window-trend.utils.d.ts +44 -0
  875. package/dist/plugins/devices-virtual/services/virtual-window-trend.utils.js +171 -0
  876. package/dist/plugins/devices-virtual/services/virtual-window-trend.utils.js.map +1 -0
  877. package/dist/plugins/devices-virtual/subscribers/virtual-thermostat-ownership.subscriber.d.ts +30 -0
  878. package/dist/plugins/devices-virtual/subscribers/virtual-thermostat-ownership.subscriber.js +195 -0
  879. package/dist/plugins/devices-virtual/subscribers/virtual-thermostat-ownership.subscriber.js.map +1 -0
  880. package/dist/plugins/devices-virtual/subscribers/virtual-transform-metadata.subscriber.d.ts +9 -0
  881. package/dist/plugins/devices-virtual/subscribers/virtual-transform-metadata.subscriber.js +58 -0
  882. package/dist/plugins/devices-virtual/subscribers/virtual-transform-metadata.subscriber.js.map +1 -0
  883. package/dist/plugins/devices-virtual/validators/category-allowed-constraint.validator.d.ts +1 -1
  884. package/dist/plugins/devices-virtual/validators/category-allowed-constraint.validator.js +6 -1
  885. package/dist/plugins/devices-virtual/validators/category-allowed-constraint.validator.js.map +1 -1
  886. package/dist/plugins/devices-wled/interfaces/wled.interface.d.ts +7 -0
  887. package/dist/plugins/devices-wled/interfaces/wled.interface.js.map +1 -1
  888. package/dist/plugins/devices-wled/platforms/wled.device.platform.d.ts +4 -2
  889. package/dist/plugins/devices-wled/platforms/wled.device.platform.js +56 -9
  890. package/dist/plugins/devices-wled/platforms/wled.device.platform.js.map +1 -1
  891. package/dist/plugins/devices-wled/services/device-mapper.service.d.ts +3 -2
  892. package/dist/plugins/devices-wled/services/device-mapper.service.js +48 -1
  893. package/dist/plugins/devices-wled/services/device-mapper.service.js.map +1 -1
  894. package/dist/plugins/devices-wled/services/wled-client-adapter.service.d.ts +6 -1
  895. package/dist/plugins/devices-wled/services/wled-client-adapter.service.js +101 -13
  896. package/dist/plugins/devices-wled/services/wled-client-adapter.service.js.map +1 -1
  897. package/dist/plugins/devices-wled/services/wled.service.js +5 -2
  898. package/dist/plugins/devices-wled/services/wled.service.js.map +1 -1
  899. package/dist/plugins/devices-zigbee2mqtt/contracts/sample-source.contract.d.ts +38 -0
  900. package/dist/plugins/devices-zigbee2mqtt/contracts/sample-source.contract.js +95 -0
  901. package/dist/plugins/devices-zigbee2mqtt/contracts/sample-source.contract.js.map +1 -0
  902. package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.plugin.js +11 -1
  903. package/dist/plugins/devices-zigbee2mqtt/devices-zigbee2mqtt.plugin.js.map +1 -1
  904. package/dist/plugins/devices-zigbee2mqtt/entities/zigbee-sample-source.entity.d.ts +18 -0
  905. package/dist/plugins/devices-zigbee2mqtt/entities/zigbee-sample-source.entity.js +79 -0
  906. package/dist/plugins/devices-zigbee2mqtt/entities/zigbee-sample-source.entity.js.map +1 -0
  907. package/dist/plugins/devices-zigbee2mqtt/interfaces/zigbee2mqtt.interface.d.ts +11 -0
  908. package/dist/plugins/devices-zigbee2mqtt/platforms/zigbee2mqtt.device.platform.d.ts +11 -2
  909. package/dist/plugins/devices-zigbee2mqtt/platforms/zigbee2mqtt.device.platform.js +100 -11
  910. package/dist/plugins/devices-zigbee2mqtt/platforms/zigbee2mqtt.device.platform.js.map +1 -1
  911. package/dist/plugins/devices-zigbee2mqtt/services/base-client-adapter.d.ts +31 -13
  912. package/dist/plugins/devices-zigbee2mqtt/services/base-client-adapter.js +166 -5
  913. package/dist/plugins/devices-zigbee2mqtt/services/base-client-adapter.js.map +1 -1
  914. package/dist/plugins/devices-zigbee2mqtt/services/device-adoption.service.d.ts +1 -0
  915. package/dist/plugins/devices-zigbee2mqtt/services/device-adoption.service.js +44 -3
  916. package/dist/plugins/devices-zigbee2mqtt/services/device-adoption.service.js.map +1 -1
  917. package/dist/plugins/devices-zigbee2mqtt/services/device-mapper.service.d.ts +20 -3
  918. package/dist/plugins/devices-zigbee2mqtt/services/device-mapper.service.js +156 -34
  919. package/dist/plugins/devices-zigbee2mqtt/services/device-mapper.service.js.map +1 -1
  920. package/dist/plugins/devices-zigbee2mqtt/services/mqtt-client-adapter.service.d.ts +1 -1
  921. package/dist/plugins/devices-zigbee2mqtt/services/mqtt-client-adapter.service.js +14 -1
  922. package/dist/plugins/devices-zigbee2mqtt/services/mqtt-client-adapter.service.js.map +1 -1
  923. package/dist/plugins/devices-zigbee2mqtt/services/native-climate-adapter.service.d.ts +15 -0
  924. package/dist/plugins/devices-zigbee2mqtt/services/native-climate-adapter.service.js +249 -0
  925. package/dist/plugins/devices-zigbee2mqtt/services/native-climate-adapter.service.js.map +1 -0
  926. package/dist/plugins/devices-zigbee2mqtt/services/websocket-sample-evidence.d.ts +2 -0
  927. package/dist/plugins/devices-zigbee2mqtt/services/websocket-sample-evidence.js +15 -0
  928. package/dist/plugins/devices-zigbee2mqtt/services/websocket-sample-evidence.js.map +1 -0
  929. package/dist/plugins/devices-zigbee2mqtt/services/ws-client-adapter.service.d.ts +7 -1
  930. package/dist/plugins/devices-zigbee2mqtt/services/ws-client-adapter.service.js +45 -2
  931. package/dist/plugins/devices-zigbee2mqtt/services/ws-client-adapter.service.js.map +1 -1
  932. package/dist/plugins/devices-zigbee2mqtt/services/zigbee-sample-sources.service.d.ts +49 -0
  933. package/dist/plugins/devices-zigbee2mqtt/services/zigbee-sample-sources.service.js +264 -0
  934. package/dist/plugins/devices-zigbee2mqtt/services/zigbee-sample-sources.service.js.map +1 -0
  935. package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt.service.js +2 -0
  936. package/dist/plugins/devices-zigbee2mqtt/services/zigbee2mqtt.service.js.map +1 -1
  937. package/dist/plugins/scenes-local/platforms/local-scene.platform.d.ts +6 -3
  938. package/dist/plugins/scenes-local/platforms/local-scene.platform.js +101 -15
  939. package/dist/plugins/scenes-local/platforms/local-scene.platform.js.map +1 -1
  940. package/dist/plugins/spaces-home-control/activity/activity-actor.d.ts +2 -0
  941. package/dist/plugins/spaces-home-control/activity/activity-actor.js +14 -0
  942. package/dist/plugins/spaces-home-control/activity/activity-actor.js.map +1 -0
  943. package/dist/plugins/spaces-home-control/activity/activity-result.utils.d.ts +6 -0
  944. package/dist/plugins/spaces-home-control/activity/activity-result.utils.js +26 -0
  945. package/dist/plugins/spaces-home-control/activity/activity-result.utils.js.map +1 -0
  946. package/dist/plugins/spaces-home-control/activity/space-activity.constants.d.ts +32 -0
  947. package/dist/plugins/spaces-home-control/activity/space-activity.constants.js +40 -0
  948. package/dist/plugins/spaces-home-control/activity/space-activity.constants.js.map +1 -0
  949. package/dist/plugins/spaces-home-control/activity/space-activity.defaults.d.ts +3 -0
  950. package/dist/plugins/spaces-home-control/activity/space-activity.defaults.js +25 -0
  951. package/dist/plugins/spaces-home-control/activity/space-activity.defaults.js.map +1 -0
  952. package/dist/plugins/spaces-home-control/activity/validate-activity-configuration.d.ts +2 -0
  953. package/dist/plugins/spaces-home-control/activity/validate-activity-configuration.js +37 -0
  954. package/dist/plugins/spaces-home-control/activity/validate-activity-configuration.js.map +1 -0
  955. package/dist/plugins/spaces-home-control/controllers/space-mode-schedules.controller.d.ts +12 -0
  956. package/dist/plugins/spaces-home-control/controllers/space-mode-schedules.controller.js +97 -0
  957. package/dist/plugins/spaces-home-control/controllers/space-mode-schedules.controller.js.map +1 -0
  958. package/dist/plugins/spaces-home-control/controllers/space-modes.controller.d.ts +19 -0
  959. package/dist/plugins/spaces-home-control/controllers/space-modes.controller.js +220 -0
  960. package/dist/plugins/spaces-home-control/controllers/space-modes.controller.js.map +1 -0
  961. package/dist/plugins/spaces-home-control/controllers/space-occupancy.controller.d.ts +18 -0
  962. package/dist/plugins/spaces-home-control/controllers/space-occupancy.controller.js +147 -0
  963. package/dist/plugins/spaces-home-control/controllers/space-occupancy.controller.js.map +1 -0
  964. package/dist/plugins/spaces-home-control/controllers/spaces-domain.controller.js +4 -0
  965. package/dist/plugins/spaces-home-control/controllers/spaces-domain.controller.js.map +1 -1
  966. package/dist/plugins/spaces-home-control/dto/activity-mode.dto.d.ts +22 -0
  967. package/dist/plugins/spaces-home-control/dto/activity-mode.dto.js +119 -0
  968. package/dist/plugins/spaces-home-control/dto/activity-mode.dto.js.map +1 -0
  969. package/dist/plugins/spaces-home-control/dto/space-mode-schedule.dto.d.ts +18 -0
  970. package/dist/plugins/spaces-home-control/dto/space-mode-schedule.dto.js +127 -0
  971. package/dist/plugins/spaces-home-control/dto/space-mode-schedule.dto.js.map +1 -0
  972. package/dist/plugins/spaces-home-control/dto/space-occupancy.dto.d.ts +13 -0
  973. package/dist/plugins/spaces-home-control/dto/space-occupancy.dto.js +99 -0
  974. package/dist/plugins/spaces-home-control/dto/space-occupancy.dto.js.map +1 -0
  975. package/dist/plugins/spaces-home-control/entities/space-activity-config.entity.d.ts +12 -0
  976. package/dist/plugins/spaces-home-control/entities/space-activity-config.entity.js +72 -0
  977. package/dist/plugins/spaces-home-control/entities/space-activity-config.entity.js.map +1 -0
  978. package/dist/plugins/spaces-home-control/entities/space-activity-state.entity.d.ts +14 -0
  979. package/dist/plugins/spaces-home-control/entities/space-activity-state.entity.js +105 -0
  980. package/dist/plugins/spaces-home-control/entities/space-activity-state.entity.js.map +1 -0
  981. package/dist/plugins/spaces-home-control/entities/space-mode-schedule.entity.d.ts +19 -0
  982. package/dist/plugins/spaces-home-control/entities/space-mode-schedule.entity.js +110 -0
  983. package/dist/plugins/spaces-home-control/entities/space-mode-schedule.entity.js.map +1 -0
  984. package/dist/plugins/spaces-home-control/entities/space-occupancy.entity.d.ts +23 -0
  985. package/dist/plugins/spaces-home-control/entities/space-occupancy.entity.js +135 -0
  986. package/dist/plugins/spaces-home-control/entities/space-occupancy.entity.js.map +1 -0
  987. package/dist/plugins/spaces-home-control/listeners/space-climate-state.listener.d.ts +2 -0
  988. package/dist/plugins/spaces-home-control/listeners/space-climate-state.listener.js +23 -0
  989. package/dist/plugins/spaces-home-control/listeners/space-climate-state.listener.js.map +1 -1
  990. package/dist/plugins/spaces-home-control/listeners/websocket-exchange.listener.js +3 -0
  991. package/dist/plugins/spaces-home-control/listeners/websocket-exchange.listener.js.map +1 -1
  992. package/dist/plugins/spaces-home-control/models/activity-configuration.model.d.ts +27 -0
  993. package/dist/plugins/spaces-home-control/models/activity-configuration.model.js +182 -0
  994. package/dist/plugins/spaces-home-control/models/activity-configuration.model.js.map +1 -0
  995. package/dist/plugins/spaces-home-control/models/activity-response.model.d.ts +16 -0
  996. package/dist/plugins/spaces-home-control/models/activity-response.model.js +79 -0
  997. package/dist/plugins/spaces-home-control/models/activity-response.model.js.map +1 -0
  998. package/dist/plugins/spaces-home-control/models/activity-result.model.d.ts +6 -0
  999. package/dist/plugins/spaces-home-control/models/activity-result.model.js +37 -0
  1000. package/dist/plugins/spaces-home-control/models/activity-result.model.js.map +1 -0
  1001. package/dist/plugins/spaces-home-control/models/climate-contribution.model.d.ts +11 -0
  1002. package/dist/plugins/spaces-home-control/models/climate-contribution.model.js +66 -0
  1003. package/dist/plugins/spaces-home-control/models/climate-contribution.model.js.map +1 -0
  1004. package/dist/plugins/spaces-home-control/models/space-mode-schedule-response.model.d.ts +9 -0
  1005. package/dist/plugins/spaces-home-control/models/space-mode-schedule-response.model.js +45 -0
  1006. package/dist/plugins/spaces-home-control/models/space-mode-schedule-response.model.js.map +1 -0
  1007. package/dist/plugins/spaces-home-control/models/space-mode-schedule.model.d.ts +34 -0
  1008. package/dist/plugins/spaces-home-control/models/space-mode-schedule.model.js +170 -0
  1009. package/dist/plugins/spaces-home-control/models/space-mode-schedule.model.js.map +1 -0
  1010. package/dist/plugins/spaces-home-control/models/space-occupancy.model.d.ts +26 -0
  1011. package/dist/plugins/spaces-home-control/models/space-occupancy.model.js +121 -0
  1012. package/dist/plugins/spaces-home-control/models/space-occupancy.model.js.map +1 -0
  1013. package/dist/plugins/spaces-home-control/models/spaces-response.model.d.ts +13 -0
  1014. package/dist/plugins/spaces-home-control/models/spaces-response.model.js +81 -2
  1015. package/dist/plugins/spaces-home-control/models/spaces-response.model.js.map +1 -1
  1016. package/dist/plugins/spaces-home-control/occupancy/occupancy-admission.d.ts +7 -0
  1017. package/dist/plugins/spaces-home-control/occupancy/occupancy-admission.js +57 -0
  1018. package/dist/plugins/spaces-home-control/occupancy/occupancy-admission.js.map +1 -0
  1019. package/dist/plugins/spaces-home-control/occupancy/space-occupancy.types.d.ts +31 -0
  1020. package/dist/plugins/spaces-home-control/occupancy/space-occupancy.types.js +30 -0
  1021. package/dist/plugins/spaces-home-control/occupancy/space-occupancy.types.js.map +1 -0
  1022. package/dist/plugins/spaces-home-control/schedule/schedule-time.d.ts +9 -0
  1023. package/dist/plugins/spaces-home-control/schedule/schedule-time.js +79 -0
  1024. package/dist/plugins/spaces-home-control/schedule/schedule-time.js.map +1 -0
  1025. package/dist/plugins/spaces-home-control/schedule/space-mode-schedule.types.d.ts +28 -0
  1026. package/dist/plugins/spaces-home-control/schedule/space-mode-schedule.types.js +7 -0
  1027. package/dist/plugins/spaces-home-control/schedule/space-mode-schedule.types.js.map +1 -0
  1028. package/dist/plugins/spaces-home-control/services/activity-test-support.d.ts +16 -0
  1029. package/dist/plugins/spaces-home-control/services/activity-test-support.js +34 -0
  1030. package/dist/plugins/spaces-home-control/services/activity-test-support.js.map +1 -0
  1031. package/dist/plugins/spaces-home-control/services/climate-contribution-planner.service.d.ts +15 -0
  1032. package/dist/plugins/spaces-home-control/services/climate-contribution-planner.service.js +97 -0
  1033. package/dist/plugins/spaces-home-control/services/climate-contribution-planner.service.js.map +1 -0
  1034. package/dist/plugins/spaces-home-control/services/climate-intent.service.d.ts +15 -2
  1035. package/dist/plugins/spaces-home-control/services/climate-intent.service.js +155 -15
  1036. package/dist/plugins/spaces-home-control/services/climate-intent.service.js.map +1 -1
  1037. package/dist/plugins/spaces-home-control/services/cover-group-intent.port.d.ts +31 -0
  1038. package/dist/plugins/spaces-home-control/services/cover-group-intent.port.js +189 -0
  1039. package/dist/plugins/spaces-home-control/services/cover-group-intent.port.js.map +1 -0
  1040. package/dist/plugins/spaces-home-control/services/covers-intent.service.d.ts +8 -3
  1041. package/dist/plugins/spaces-home-control/services/covers-intent.service.js +139 -65
  1042. package/dist/plugins/spaces-home-control/services/covers-intent.service.js.map +1 -1
  1043. package/dist/plugins/spaces-home-control/services/lighting-contribution-planner.service.d.ts +16 -0
  1044. package/dist/plugins/spaces-home-control/services/lighting-contribution-planner.service.js +66 -0
  1045. package/dist/plugins/spaces-home-control/services/lighting-contribution-planner.service.js.map +1 -0
  1046. package/dist/plugins/spaces-home-control/services/lighting-intent.service.d.ts +13 -3
  1047. package/dist/plugins/spaces-home-control/services/lighting-intent.service.js +93 -13
  1048. package/dist/plugins/spaces-home-control/services/lighting-intent.service.js.map +1 -1
  1049. package/dist/plugins/spaces-home-control/services/space-activity-config.service.d.ts +25 -0
  1050. package/dist/plugins/spaces-home-control/services/space-activity-config.service.js +144 -0
  1051. package/dist/plugins/spaces-home-control/services/space-activity-config.service.js.map +1 -0
  1052. package/dist/plugins/spaces-home-control/services/space-activity-domains.service.d.ts +21 -0
  1053. package/dist/plugins/spaces-home-control/services/space-activity-domains.service.js +139 -0
  1054. package/dist/plugins/spaces-home-control/services/space-activity-domains.service.js.map +1 -0
  1055. package/dist/plugins/spaces-home-control/services/space-climate-automation.port.d.ts +17 -0
  1056. package/dist/plugins/spaces-home-control/services/space-climate-automation.port.js +5 -0
  1057. package/dist/plugins/spaces-home-control/services/space-climate-automation.port.js.map +1 -0
  1058. package/dist/plugins/spaces-home-control/services/space-climate-automation.service.d.ts +63 -0
  1059. package/dist/plugins/spaces-home-control/services/space-climate-automation.service.js +722 -0
  1060. package/dist/plugins/spaces-home-control/services/space-climate-automation.service.js.map +1 -0
  1061. package/dist/plugins/spaces-home-control/services/space-climate-state.service.d.ts +8 -3
  1062. package/dist/plugins/spaces-home-control/services/space-climate-state.service.js +25 -19
  1063. package/dist/plugins/spaces-home-control/services/space-climate-state.service.js.map +1 -1
  1064. package/dist/plugins/spaces-home-control/services/space-covers-state.service.d.ts +16 -2
  1065. package/dist/plugins/spaces-home-control/services/space-covers-state.service.js +102 -18
  1066. package/dist/plugins/spaces-home-control/services/space-covers-state.service.js.map +1 -1
  1067. package/dist/plugins/spaces-home-control/services/space-intent-base.service.d.ts +2 -0
  1068. package/dist/plugins/spaces-home-control/services/space-intent-base.service.js.map +1 -1
  1069. package/dist/plugins/spaces-home-control/services/space-lighting-state.service.d.ts +4 -1
  1070. package/dist/plugins/spaces-home-control/services/space-lighting-state.service.js +94 -24
  1071. package/dist/plugins/spaces-home-control/services/space-lighting-state.service.js.map +1 -1
  1072. package/dist/plugins/spaces-home-control/services/space-media-activity.service.d.ts +8 -2
  1073. package/dist/plugins/spaces-home-control/services/space-media-activity.service.js +79 -13
  1074. package/dist/plugins/spaces-home-control/services/space-media-activity.service.js.map +1 -1
  1075. package/dist/plugins/spaces-home-control/services/space-mode-schedule-config.service.d.ts +24 -0
  1076. package/dist/plugins/spaces-home-control/services/space-mode-schedule-config.service.js +132 -0
  1077. package/dist/plugins/spaces-home-control/services/space-mode-schedule-config.service.js.map +1 -0
  1078. package/dist/plugins/spaces-home-control/services/space-mode-scheduler.service.d.ts +39 -0
  1079. package/dist/plugins/spaces-home-control/services/space-mode-scheduler.service.js +289 -0
  1080. package/dist/plugins/spaces-home-control/services/space-mode-scheduler.service.js.map +1 -0
  1081. package/dist/plugins/spaces-home-control/services/space-mode.service.d.ts +34 -0
  1082. package/dist/plugins/spaces-home-control/services/space-mode.service.js +296 -0
  1083. package/dist/plugins/spaces-home-control/services/space-mode.service.js.map +1 -0
  1084. package/dist/plugins/spaces-home-control/services/space-occupancy-config.service.d.ts +26 -0
  1085. package/dist/plugins/spaces-home-control/services/space-occupancy-config.service.js +134 -0
  1086. package/dist/plugins/spaces-home-control/services/space-occupancy-config.service.js.map +1 -0
  1087. package/dist/plugins/spaces-home-control/services/space-occupancy-inputs.service.d.ts +21 -0
  1088. package/dist/plugins/spaces-home-control/services/space-occupancy-inputs.service.js +84 -0
  1089. package/dist/plugins/spaces-home-control/services/space-occupancy-inputs.service.js.map +1 -0
  1090. package/dist/plugins/spaces-home-control/services/space-occupancy.service.d.ts +48 -0
  1091. package/dist/plugins/spaces-home-control/services/space-occupancy.service.js +285 -0
  1092. package/dist/plugins/spaces-home-control/services/space-occupancy.service.js.map +1 -0
  1093. package/dist/plugins/spaces-home-control/services/space-state-read.service.d.ts +5 -1
  1094. package/dist/plugins/spaces-home-control/services/space-state-read.service.js +33 -7
  1095. package/dist/plugins/spaces-home-control/services/space-state-read.service.js.map +1 -1
  1096. package/dist/plugins/spaces-home-control/spaces-home-control.openapi.js +52 -0
  1097. package/dist/plugins/spaces-home-control/spaces-home-control.openapi.js.map +1 -1
  1098. package/dist/plugins/spaces-home-control/spaces-home-control.plugin.d.ts +5 -1
  1099. package/dist/plugins/spaces-home-control/spaces-home-control.plugin.js +57 -2
  1100. package/dist/plugins/spaces-home-control/spaces-home-control.plugin.js.map +1 -1
  1101. package/dist/spec/channels.d.ts +27 -4
  1102. package/dist/spec/channels.js +37 -6
  1103. package/dist/spec/channels.js.map +1 -1
  1104. package/dist/spec/devices.d.ts +20 -0
  1105. package/dist/spec/devices.js +20 -0
  1106. package/dist/spec/devices.js.map +1 -1
  1107. package/dist/tsconfig.build.tsbuildinfo +1 -1
  1108. package/package.json +4 -3
@@ -1,6 +1,11 @@
1
1
  import { Cct, Cover, Device, DevicePower, Em, Em1, Em1Data, EmData, Humidity, Input, Light, Pm1, Rgb, Rgbw, Switch, Temperature } from 'shellies-ds9';
2
2
  import { EventEmitter2 } from '@nestjs/event-emitter';
3
+ import { ShellyRawSample } from '../contracts/native-temperature.contract';
4
+ import { ShellyProtectiveCommand, ShellyProtectiveCommandResult, ShellyProtectiveQualification } from '../contracts/protective-switch.contract';
3
5
  import { DeviceDescriptor } from '../devices-shelly-ng.constants';
6
+ import { ShellyCoverOrderingService } from '../services/shelly-cover-ordering.service';
7
+ import { ShellyCoverSession } from '../services/shelly-cover-session';
8
+ import { ShellyGuardRpcSession } from '../services/shelly-guard-rpc-session';
4
9
  type SupportedComponent = Switch | Light | Rgb | Rgbw | Cct | Cover | Input | DevicePower | Humidity | Temperature | Pm1 | Em | EmData | Em1 | Em1Data;
5
10
  export type ShellyValueOrigin = 'notify' | 'poll';
6
11
  export declare class ShellyDeviceDelegate extends EventEmitter2 {
@@ -26,12 +31,45 @@ export declare class ShellyDeviceDelegate extends EventEmitter2 {
26
31
  em1Data: Map<number, Em1Data>;
27
32
  readonly descriptor: DeviceDescriptor | null;
28
33
  private changeHandlers;
34
+ private connectionGeneration;
35
+ private protectiveGeneration;
36
+ private readonly sampleComponentKeys;
37
+ private sampleBindingGeneration;
38
+ private coverTelemetry;
39
+ private coverTelemetryRpc;
29
40
  private applyingPollComponent;
30
41
  private readonly notificationRevisions;
31
42
  private readonly changedNotificationCharacteristics;
32
43
  private clearChangedNotificationCharacteristicsQueued;
33
44
  constructor(shelly: Device);
45
+ prepareGuardRpcSession(componentId: number, qualification: ShellyProtectiveQualification, isCurrent: () => boolean): ShellyGuardRpcSession | null;
46
+ revokePendingProtectiveOn(): void;
47
+ protectiveSwitch(componentId: number, command: ShellyProtectiveCommand, timeoutMs: number, isAdmitted?: () => boolean): Promise<ShellyProtectiveCommandResult>;
48
+ private readonly coverSessions;
49
+ prepareCoverSession(componentKey: string, canonicalMac: string, ordering: ShellyCoverOrderingService): ShellyCoverSession | null;
50
+ captureCoverRecoveryConnection(componentKey: string, canonicalMac: string): {
51
+ revision: number;
52
+ isCurrent: () => boolean;
53
+ };
54
+ retireCoverSession(componentKey: string): void;
55
+ beginCoverRecoverySession(componentKey: string, canonicalMac: string, ordering: ShellyCoverOrderingService): {
56
+ session: ShellyCoverSession;
57
+ isCurrent: () => boolean;
58
+ install: () => void;
59
+ dispose: () => void;
60
+ };
61
+ prepareLightingCommand(componentKey: string, on: boolean, brightness?: number): {
62
+ isCurrent(): boolean;
63
+ dispatch(isAdmitted: () => boolean): Promise<boolean>;
64
+ } | null;
65
+ captureThermostatSetupMetadata(componentId: number): {
66
+ device_hardware_id: string;
67
+ firmware: string;
68
+ switch_configuration_json: string;
69
+ isCurrent: () => boolean;
70
+ };
34
71
  get id(): string;
72
+ get guardedTransportActive(): boolean;
35
73
  get rpcConnected(): boolean;
36
74
  ping(timeoutMs?: number): Promise<boolean>;
37
75
  pollStatus(timeoutMs?: number, isCurrent?: () => boolean): Promise<boolean>;
@@ -45,7 +83,14 @@ export declare class ShellyDeviceDelegate extends EventEmitter2 {
45
83
  private handleChange;
46
84
  private handleStatusUpdate;
47
85
  private rememberChangedNotificationCharacteristic;
48
- emitNotificationValue(compKey: string, char: string, val: unknown): void;
86
+ emitNotificationValue(compKey: string, char: string, val: unknown, advanceRevision?: boolean): void;
87
+ emitNotificationSample(componentKey: string, values: Record<string, unknown>, evidence: ShellyRawSample['evidence']): void;
88
+ private emitRawSample;
89
+ readNativeTemperatureIdentity(componentKey: string, timeoutMs?: number): Promise<{
90
+ config: Record<string, unknown>;
91
+ peripherals: Record<string, unknown>;
92
+ } | null>;
93
+ setSampleComponentKeys(keys: Iterable<string>): void;
49
94
  detach(): void;
50
95
  destroy(): void;
51
96
  }
@@ -4,8 +4,14 @@ exports.ShellyDeviceDelegate = void 0;
4
4
  const shellies_ds9_1 = require("shellies-ds9");
5
5
  const event_emitter_1 = require("@nestjs/event-emitter");
6
6
  const logger_1 = require("../../../common/logger");
7
+ const native_temperature_contract_1 = require("../contracts/native-temperature.contract");
8
+ const protective_switch_contract_1 = require("../contracts/protective-switch.contract");
7
9
  const devices_shelly_ng_constants_1 = require("../devices-shelly-ng.constants");
8
10
  const devices_shelly_ng_exceptions_1 = require("../devices-shelly-ng.exceptions");
11
+ const guarded_shelly_rpc_1 = require("../services/guarded-shelly-rpc");
12
+ const shelly_cover_session_1 = require("../services/shelly-cover-session");
13
+ const shelly_cover_telemetry_1 = require("../services/shelly-cover-telemetry");
14
+ const shelly_guard_rpc_session_1 = require("../services/shelly-guard-rpc-session");
9
15
  const transform_utils_1 = require("../utils/transform.utils");
10
16
  class ShellyDeviceDelegate extends event_emitter_1.EventEmitter2 {
11
17
  constructor(shelly) {
@@ -31,17 +37,24 @@ class ShellyDeviceDelegate extends event_emitter_1.EventEmitter2 {
31
37
  this.em1 = new Map();
32
38
  this.em1Data = new Map();
33
39
  this.changeHandlers = new Map();
40
+ this.connectionGeneration = 0;
41
+ this.protectiveGeneration = 0;
42
+ this.sampleComponentKeys = new Set();
43
+ this.sampleBindingGeneration = 0;
34
44
  this.applyingPollComponent = null;
35
45
  this.notificationRevisions = new Map();
36
46
  this.changedNotificationCharacteristics = new Map();
37
47
  this.clearChangedNotificationCharacteristicsQueued = false;
48
+ this.coverSessions = new Map();
38
49
  this.handleConnect = () => {
50
+ this.connectionGeneration++;
39
51
  this.logger.log(`Device=${this.shelly.id} connected`, { resource: this.shelly.id });
40
52
  this.connected = true;
41
53
  this.disconnectedAt = null;
42
54
  this.emit('connected', true);
43
55
  };
44
56
  this.handleDisconnect = (code, reason, reconnectIn) => {
57
+ this.connectionGeneration++;
45
58
  const details = reason.length > 0 ? 'reason: ' + reason : 'code: ' + code;
46
59
  if (this.connected) {
47
60
  this.logger.warn(`Device=${this.shelly.id} disconnected, ${details}`, { resource: this.shelly.id });
@@ -80,6 +93,39 @@ class ShellyDeviceDelegate extends event_emitter_1.EventEmitter2 {
80
93
  (0, transform_utils_1.emitFlattenedValue)((event, ...args) => this.emit(event, ...args, origin), compKey, char, val);
81
94
  };
82
95
  this.handleStatusUpdate = (update) => {
96
+ const observedAt = new Date();
97
+ for (const [key, values] of Object.entries(update)) {
98
+ if (values && typeof values === 'object') {
99
+ this.notificationRevisions.set(key, (this.notificationRevisions.get(key) ?? 0) + 1);
100
+ const raw = values;
101
+ if (/^cover:\d+$/.test(key) &&
102
+ this.sampleComponentKeys.has(key) &&
103
+ (0, shelly_cover_telemetry_1.coverDeltaNeedsRefresh)(raw, Number(key.split(':')[1])) &&
104
+ this.shelly.rpcHandler instanceof guarded_shelly_rpc_1.GuardedShellyRpcHandler) {
105
+ const generation = this.connectionGeneration;
106
+ const binding = this.sampleBindingGeneration;
107
+ const rpc = this.shelly.rpcHandler;
108
+ if (this.coverTelemetryRpc !== rpc) {
109
+ this.coverTelemetryRpc = rpc;
110
+ this.coverTelemetry = new shelly_cover_telemetry_1.ShellyCoverTelemetry(rpc, (component, full, sampledAt, current, sourceCurrent) => this.emitRawSample(component, full, {
111
+ sampledAt,
112
+ observedAt: sampledAt,
113
+ receivedAt: new Date(),
114
+ provenance: 'live',
115
+ isCurrent: current,
116
+ sourceIsCurrent: sourceCurrent,
117
+ }));
118
+ }
119
+ this.coverTelemetry.refresh(key, this.notificationRevisions.get(key), () => generation === this.connectionGeneration &&
120
+ binding === this.sampleBindingGeneration &&
121
+ this.shelly.rpcHandler === rpc &&
122
+ rpc.connected &&
123
+ this.sampleComponentKeys.has(key), () => this.notificationRevisions.get(key) ?? 0);
124
+ }
125
+ else
126
+ this.emitRawSample(key, raw, (0, native_temperature_contract_1.shellySampleEvidence)(update.ts, observedAt));
127
+ }
128
+ }
83
129
  for (const [componentKey, values] of Object.entries(update)) {
84
130
  if (componentKey === 'ts' ||
85
131
  typeof values !== 'object' ||
@@ -92,7 +138,7 @@ class ShellyDeviceDelegate extends event_emitter_1.EventEmitter2 {
92
138
  if (changedCharacteristics?.delete(characteristic)) {
93
139
  continue;
94
140
  }
95
- this.emitNotificationValue(componentKey, characteristic, value);
141
+ this.emitNotificationValue(componentKey, characteristic, value, false);
96
142
  }
97
143
  if (changedCharacteristics?.size === 0) {
98
144
  this.changedNotificationCharacteristics.delete(componentKey);
@@ -211,9 +257,226 @@ class ShellyDeviceDelegate extends event_emitter_1.EventEmitter2 {
211
257
  }
212
258
  this.descriptor = matchedDescriptor;
213
259
  }
260
+ prepareGuardRpcSession(componentId, qualification, isCurrent) {
261
+ const rpc = this.shelly.rpcHandler;
262
+ const component = this.switches.get(componentId);
263
+ if (!(rpc instanceof guarded_shelly_rpc_1.GuardedShellyRpcHandler) || !component || !rpc.connected)
264
+ return null;
265
+ const generation = this.connectionGeneration;
266
+ return new shelly_guard_rpc_session_1.ShellyGuardRpcSession(rpc, componentId, qualification, () => isCurrent() &&
267
+ this.shelly.rpcHandler === rpc &&
268
+ generation === this.connectionGeneration &&
269
+ this.switches.get(componentId) === component &&
270
+ this.shelly.id === qualification.deviceId &&
271
+ this.shelly.model === qualification.model);
272
+ }
273
+ revokePendingProtectiveOn() {
274
+ this.protectiveGeneration++;
275
+ }
276
+ async protectiveSwitch(componentId, command, timeoutMs, isAdmitted) {
277
+ if (command.on && (!isAdmitted || !(this.shelly.rpcHandler instanceof guarded_shelly_rpc_1.GuardedShellyRpcHandler)))
278
+ return { outcome: 'refused', reasons: ['guarded_command_authority_missing'] };
279
+ if (!command.on)
280
+ this.protectiveGeneration++;
281
+ const protectiveGeneration = this.protectiveGeneration;
282
+ const component = this.switches.get(componentId);
283
+ if (!component || !Number.isFinite(timeoutMs) || timeoutMs <= 0) {
284
+ return { outcome: 'refused', reasons: ['invalid_component_or_timeout'] };
285
+ }
286
+ const generation = this.connectionGeneration;
287
+ const expiresAt = Date.now() + timeoutMs;
288
+ const guard = () => Date.now() < expiresAt &&
289
+ generation === this.connectionGeneration &&
290
+ protectiveGeneration === this.protectiveGeneration &&
291
+ this.switches.get(componentId) === component &&
292
+ (isAdmitted?.() ?? !command.on);
293
+ if (command.on) {
294
+ const info = await this.rpcWithTimeout(() => this.shelly.shelly.getDeviceInfo(), timeoutMs);
295
+ if (generation !== this.connectionGeneration)
296
+ return { outcome: 'refused', reasons: ['connection_generation_changed'] };
297
+ if (!info.ok)
298
+ return { outcome: 'refused', reasons: ['firmware_identity_unavailable'] };
299
+ const firmware = info.value.fw_id;
300
+ const reasons = [
301
+ ...(0, protective_switch_contract_1.protectiveReadiness)({ deviceId: info.value.id, model: info.value.model, firmware }, componentId, command.qualification),
302
+ ];
303
+ const bounds = command.qualification.testedLeaseSeconds;
304
+ if (!Number.isFinite(command.leaseSeconds) ||
305
+ command.leaseSeconds < bounds.min ||
306
+ command.leaseSeconds > bounds.max) {
307
+ reasons.push('lease_outside_qualified_bounds');
308
+ }
309
+ if (reasons.length)
310
+ return { outcome: 'refused', reasons };
311
+ }
312
+ if (!guard())
313
+ return { outcome: 'refused', reasons: ['command_authority_expired'] };
314
+ const invoke = () => (command.on ? component.set(true, command.leaseSeconds) : component.set(false));
315
+ const rpc = this.shelly.rpcHandler;
316
+ const response = await this.rpcWithTimeout(() => (rpc instanceof guarded_shelly_rpc_1.GuardedShellyRpcHandler ? rpc.withSendGuard(guard, invoke) : invoke()), timeoutMs);
317
+ if (generation !== this.connectionGeneration || !response.ok || typeof response.value?.was_on !== 'boolean') {
318
+ return { outcome: 'unknown', outputConfirmed: false, pendingOnDrained: false };
319
+ }
320
+ return { outcome: 'accepted', wasOn: response.value.was_on, outputConfirmed: false, pendingOnDrained: false };
321
+ }
322
+ prepareCoverSession(componentKey, canonicalMac, ordering) {
323
+ const match = /^cover:(\d+)$/.exec(componentKey);
324
+ const rpc = this.shelly.rpcHandler;
325
+ if (!match ||
326
+ !(rpc instanceof guarded_shelly_rpc_1.GuardedShellyRpcHandler) ||
327
+ !rpc.connected ||
328
+ !canonicalMac ||
329
+ this.shelly.macAddress?.toUpperCase() !== canonicalMac.toUpperCase())
330
+ return null;
331
+ const id = Number(match[1]);
332
+ const component = this.covers.get(id);
333
+ if (!component)
334
+ return null;
335
+ const old = this.coverSessions.get(id);
336
+ if (old?.identityIsCurrent())
337
+ return old;
338
+ const generation = this.connectionGeneration;
339
+ const model = this.shelly.model;
340
+ const session = new shelly_cover_session_1.ShellyCoverSession(rpc, id, () => this.shelly.rpcHandler === rpc &&
341
+ generation === this.connectionGeneration &&
342
+ this.shelly.model === model &&
343
+ this.shelly.macAddress?.toUpperCase() === canonicalMac.toUpperCase() &&
344
+ this.covers.get(id) === component, ordering, `${canonicalMac.toUpperCase()}|cover:${id}`);
345
+ this.coverSessions.set(id, session);
346
+ return session;
347
+ }
348
+ captureCoverRecoveryConnection(componentKey, canonicalMac) {
349
+ const match = /^cover:(\d+)$/.exec(componentKey);
350
+ const rpc = this.shelly.rpcHandler;
351
+ const component = match ? this.covers.get(Number(match[1])) : null;
352
+ if (!component ||
353
+ !(rpc instanceof guarded_shelly_rpc_1.GuardedShellyRpcHandler) ||
354
+ !rpc.connected ||
355
+ this.shelly.macAddress?.toUpperCase() !== canonicalMac.toUpperCase())
356
+ return null;
357
+ const generation = this.connectionGeneration;
358
+ return {
359
+ revision: generation,
360
+ isCurrent: () => rpc === this.shelly.rpcHandler &&
361
+ rpc.connected &&
362
+ this.connectionGeneration === generation &&
363
+ this.covers.get(Number(match[1])) === component &&
364
+ this.shelly.macAddress?.toUpperCase() === canonicalMac.toUpperCase(),
365
+ };
366
+ }
367
+ retireCoverSession(componentKey) {
368
+ this.coverSessions.get(Number(componentKey.split(':')[1]))?.retire();
369
+ }
370
+ beginCoverRecoverySession(componentKey, canonicalMac, ordering) {
371
+ const id = Number(componentKey.split(':')[1]);
372
+ const old = this.coverSessions.get(id);
373
+ old?.retire();
374
+ if (old?.hasActiveDispatch())
375
+ throw new Error('Cover has active local dispatch');
376
+ this.coverSessions.delete(id);
377
+ const fresh = this.prepareCoverSession(componentKey, canonicalMac, ordering);
378
+ if (!fresh)
379
+ throw new Error('Current guarded cover session unavailable');
380
+ this.coverSessions.delete(id);
381
+ return {
382
+ session: fresh,
383
+ isCurrent: () => fresh.identityIsCurrent() && !this.coverSessions.has(id),
384
+ install: () => {
385
+ if (!fresh.identityIsCurrent() || this.coverSessions.has(id))
386
+ throw new Error('Cover recovery session changed');
387
+ this.coverSessions.set(id, fresh);
388
+ },
389
+ dispose: () => {
390
+ if (this.coverSessions.get(id) === fresh && !fresh.identityIsCurrent())
391
+ this.coverSessions.delete(id);
392
+ if (this.coverSessions.get(id) !== fresh)
393
+ fresh.retire();
394
+ },
395
+ };
396
+ }
397
+ prepareLightingCommand(componentKey, on, brightness) {
398
+ const match = /^(switch|light):(\d+)$/.exec(componentKey);
399
+ const rpc = this.shelly.rpcHandler;
400
+ if (!match || !(rpc instanceof guarded_shelly_rpc_1.GuardedShellyRpcHandler) || !rpc.connected)
401
+ return null;
402
+ const id = Number(match[2]);
403
+ const components = match[1] === 'switch' ? this.switches : this.lights;
404
+ const component = components.get(id);
405
+ if (!component || (match[1] === 'switch' && brightness !== undefined))
406
+ return null;
407
+ const generation = this.connectionGeneration;
408
+ const model = this.shelly.model;
409
+ const isCurrent = () => this.shelly.rpcHandler === rpc &&
410
+ rpc.connected &&
411
+ generation === this.connectionGeneration &&
412
+ this.shelly.model === model &&
413
+ components.get(id) === component;
414
+ return {
415
+ isCurrent,
416
+ dispatch: async (isAdmitted) => {
417
+ const guard = () => isCurrent() && isAdmitted();
418
+ if (!guard())
419
+ return false;
420
+ try {
421
+ await rpc.withSendGuard(guard, () => component instanceof shellies_ds9_1.Light ? component.set(on, brightness) : component.set(on));
422
+ return guard();
423
+ }
424
+ catch {
425
+ return false;
426
+ }
427
+ },
428
+ };
429
+ }
430
+ captureThermostatSetupMetadata(componentId) {
431
+ const component = this.switches.get(componentId), config = component?.config;
432
+ if (!this.connected || !this.rpcConnected || !config || !this.shelly.firmware.id)
433
+ return null;
434
+ const allowed = [
435
+ 'id',
436
+ 'name',
437
+ 'in_mode',
438
+ 'in_locked',
439
+ 'initial_state',
440
+ 'auto_on',
441
+ 'auto_on_delay',
442
+ 'auto_off',
443
+ 'auto_off_delay',
444
+ 'autorecover_voltage_errors',
445
+ 'input_id',
446
+ 'power_limit',
447
+ 'voltage_limit',
448
+ 'undervoltage_limit',
449
+ 'current_limit',
450
+ 'reverse',
451
+ ];
452
+ if (Object.entries(config).some(([key, value]) => !allowed.includes(key) ||
453
+ (value !== null && !['string', 'boolean', 'number'].includes(typeof value)) ||
454
+ (typeof value === 'number' && !Number.isFinite(value))))
455
+ return null;
456
+ if (config.id !== componentId ||
457
+ typeof config.auto_on !== 'boolean' ||
458
+ typeof config.auto_off !== 'boolean' ||
459
+ !config.initial_state ||
460
+ !config.in_mode)
461
+ return null;
462
+ const json = JSON.stringify(config), firmware = this.shelly.firmware.id;
463
+ return {
464
+ device_hardware_id: this.shelly.id,
465
+ firmware,
466
+ switch_configuration_json: json,
467
+ isCurrent: () => this.connected &&
468
+ this.rpcConnected &&
469
+ this.switches.get(componentId) === component &&
470
+ JSON.stringify(component.config) === json &&
471
+ this.shelly.firmware.id === firmware,
472
+ };
473
+ }
214
474
  get id() {
215
475
  return this.shelly.id;
216
476
  }
477
+ get guardedTransportActive() {
478
+ return this.shelly.rpcHandler instanceof guarded_shelly_rpc_1.GuardedShellyRpcHandler && this.shelly.rpcHandler.connected;
479
+ }
217
480
  get rpcConnected() {
218
481
  return this.shelly.rpcHandler.connected;
219
482
  }
@@ -224,9 +487,11 @@ class ShellyDeviceDelegate extends event_emitter_1.EventEmitter2 {
224
487
  if (!this.shelly.rpcHandler.connected) {
225
488
  return false;
226
489
  }
490
+ const observedAt = new Date();
491
+ const generation = this.connectionGeneration;
227
492
  const revisionsAtStart = new Map(this.notificationRevisions);
228
493
  const result = await this.rpcWithTimeout(() => this.shelly.shelly.getStatus(), timeoutMs);
229
- if (!result.ok || !isCurrent()) {
494
+ if (!result.ok || !isCurrent() || generation !== this.connectionGeneration) {
230
495
  return false;
231
496
  }
232
497
  for (const [componentKey, values] of Object.entries(result.value)) {
@@ -237,6 +502,7 @@ class ShellyDeviceDelegate extends event_emitter_1.EventEmitter2 {
237
502
  if ((this.notificationRevisions.get(componentKey) ?? 0) !== (revisionsAtStart.get(componentKey) ?? 0)) {
238
503
  continue;
239
504
  }
505
+ this.emitRawSample(componentKey, componentValues, (0, native_temperature_contract_1.shellySampleEvidence)(result.value.ts, observedAt));
240
506
  const component = this.shelly.getComponent(componentKey);
241
507
  if (!component) {
242
508
  continue;
@@ -252,6 +518,14 @@ class ShellyDeviceDelegate extends event_emitter_1.EventEmitter2 {
252
518
  this.applyingPollComponent = null;
253
519
  }
254
520
  }
521
+ for (const key of this.sampleComponentKeys) {
522
+ if (!isCurrent() || generation !== this.connectionGeneration)
523
+ return false;
524
+ if (!Object.hasOwn(result.value, key) &&
525
+ (this.notificationRevisions.get(key) ?? 0) === (revisionsAtStart.get(key) ?? 0)) {
526
+ this.emitRawSample(key, { errors: ['source_missing'] }, (0, native_temperature_contract_1.shellySampleEvidence)(undefined, observedAt));
527
+ }
528
+ }
255
529
  return true;
256
530
  }
257
531
  async rpcWithTimeout(factory, timeoutMs) {
@@ -303,11 +577,48 @@ class ShellyDeviceDelegate extends event_emitter_1.EventEmitter2 {
303
577
  this.clearChangedNotificationCharacteristicsQueued = false;
304
578
  });
305
579
  }
306
- emitNotificationValue(compKey, char, val) {
307
- this.notificationRevisions.set(compKey, (this.notificationRevisions.get(compKey) ?? 0) + 1);
580
+ emitNotificationValue(compKey, char, val, advanceRevision = true) {
581
+ if (advanceRevision)
582
+ this.notificationRevisions.set(compKey, (this.notificationRevisions.get(compKey) ?? 0) + 1);
308
583
  (0, transform_utils_1.emitFlattenedValue)((event, ...args) => this.emit(event, ...args, 'notify'), compKey, char, val);
309
584
  }
585
+ emitNotificationSample(componentKey, values, evidence) {
586
+ this.notificationRevisions.set(componentKey, (this.notificationRevisions.get(componentKey) ?? 0) + 1);
587
+ this.emitRawSample(componentKey, values, evidence);
588
+ }
589
+ emitRawSample(componentKey, values, evidence) {
590
+ if (/^(temperature|input|voltmeter|switch|light|cover):\d+$/.test(componentKey)) {
591
+ const generation = this.connectionGeneration;
592
+ this.emit('sample', {
593
+ componentKey,
594
+ values: Object.freeze({ ...values }),
595
+ evidence: {
596
+ ...evidence,
597
+ isCurrent: () => generation === this.connectionGeneration && (evidence.isCurrent?.() ?? true),
598
+ },
599
+ });
600
+ }
601
+ }
602
+ async readNativeTemperatureIdentity(componentKey, timeoutMs = 10_000) {
603
+ const [type, id] = componentKey.split(':');
604
+ if (!['input', 'voltmeter', 'temperature'].includes(type) || !/^\d+$/.test(id))
605
+ return null;
606
+ const result = await this.rpcWithTimeout(async () => {
607
+ const config = await this.shelly.rpcHandler.request(`${type === 'input' ? 'Input' : type === 'voltmeter' ? 'Voltmeter' : 'Temperature'}.GetConfig`, { id: Number(id) });
608
+ const peripherals = await this.shelly.rpcHandler.request('SensorAddon.GetPeripherals');
609
+ return { config, peripherals };
610
+ }, timeoutMs);
611
+ return result.ok ? result.value : null;
612
+ }
613
+ setSampleComponentKeys(keys) {
614
+ this.sampleBindingGeneration++;
615
+ this.sampleComponentKeys.clear();
616
+ for (const key of keys)
617
+ this.sampleComponentKeys.add(key);
618
+ }
310
619
  detach() {
620
+ this.connectionGeneration++;
621
+ this.sampleComponentKeys.clear();
311
622
  this.shelly.rpcHandler
312
623
  .off('connect', this.handleConnect)
313
624
  .off('disconnect', this.handleDisconnect)
@@ -1 +1 @@
1
- {"version":3,"file":"shelly-device.delegate.js","sourceRoot":"","sources":["../../../../src/plugins/devices-shelly-ng/delegates/shelly-device.delegate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shelly-device.delegate.js","sourceRoot":"","sources":["../../../../src/plugins/devices-shelly-ng/delegates/shelly-device.delegate.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
1
  import { AdoptDeviceDto, AdoptDevicesDto } from './dto/adopt-devices.dto';
2
+ import { RecoverCoverOrderingDto, ReqRecoverCoverOrderingDto } from './dto/cover-recovery.dto';
2
3
  import { CreateShellyNgChannelPropertyDto } from './dto/create-channel-property.dto';
3
4
  import { CreateShellyNgChannelDto } from './dto/create-channel.dto';
4
5
  import { CreateShellyNgDeviceDto } from './dto/create-device.dto';
5
6
  import { ShellyNgUpdatePluginConfigMdnsDto, ShellyNgUpdatePluginConfigWebsocketsDto } from './dto/update-config.dto';
6
7
  import { ShellyNgChannelEntity, ShellyNgChannelPropertyEntity, ShellyNgDeviceEntity } from './entities/devices-shelly-ng.entity';
7
8
  import { ShellyNgWebsocketsConfigModel } from './models/config.model';
9
+ import { CoverRecoveryContextModel, CoverRecoveryContextResponseModel, CoverRecoveryModel, CoverRecoveryResponseModel } from './models/cover-recovery.model';
8
10
  import { ShellyNgAdoptionResponseModel, ShellyNgDeviceInfoResponseModel, ShellyNgDiscoverySessionResponseModel, ShellyNgMappingReloadResponseModel, ShellyNgSupportedDevicesResponseModel } from './models/shelly-ng-response.model';
9
11
  import { ShellyNgAdoptionResultModel, ShellyNgDeviceInfoAuthenticationModel, ShellyNgDeviceInfoModel, ShellyNgDiscoveryDeviceModel, ShellyNgDiscoverySessionModel, ShellyNgMappingReloadCacheStatsModel, ShellyNgMappingReloadModel, ShellyNgSupportedDeviceModel, ShellyNgSupportedDeviceSystemComponentModel } from './models/shelly-ng.model';
10
- export declare const DEVICES_SHELLY_NG_PLUGIN_SWAGGER_EXTRA_MODELS: (typeof AdoptDeviceDto | typeof AdoptDevicesDto | typeof ShellyNgSupportedDeviceSystemComponentModel | typeof ShellyNgSupportedDeviceModel | typeof ShellyNgDeviceInfoAuthenticationModel | typeof ShellyNgDeviceInfoModel | typeof ShellyNgDiscoveryDeviceModel | typeof ShellyNgDiscoverySessionModel | typeof ShellyNgMappingReloadCacheStatsModel | typeof ShellyNgMappingReloadModel | typeof ShellyNgAdoptionResultModel | typeof ShellyNgDeviceInfoResponseModel | typeof ShellyNgSupportedDevicesResponseModel | typeof ShellyNgDiscoverySessionResponseModel | typeof ShellyNgMappingReloadResponseModel | typeof ShellyNgAdoptionResponseModel | typeof CreateShellyNgChannelPropertyDto | typeof CreateShellyNgChannelDto | typeof ShellyNgDeviceEntity | typeof ShellyNgChannelEntity | typeof ShellyNgChannelPropertyEntity | typeof CreateShellyNgDeviceDto | typeof ShellyNgWebsocketsConfigModel | typeof ShellyNgUpdatePluginConfigMdnsDto | typeof ShellyNgUpdatePluginConfigWebsocketsDto)[];
12
+ export declare const DEVICES_SHELLY_NG_PLUGIN_SWAGGER_EXTRA_MODELS: (typeof RecoverCoverOrderingDto | typeof ReqRecoverCoverOrderingDto | typeof CoverRecoveryContextModel | typeof CoverRecoveryModel | typeof CoverRecoveryContextResponseModel | typeof CoverRecoveryResponseModel | typeof CreateShellyNgDeviceDto | typeof ShellyNgDeviceEntity | typeof ShellyNgChannelEntity | typeof ShellyNgChannelPropertyEntity | typeof CreateShellyNgChannelPropertyDto | typeof CreateShellyNgChannelDto | typeof AdoptDeviceDto | typeof AdoptDevicesDto | typeof ShellyNgSupportedDeviceSystemComponentModel | typeof ShellyNgSupportedDeviceModel | typeof ShellyNgDeviceInfoAuthenticationModel | typeof ShellyNgDeviceInfoModel | typeof ShellyNgDiscoveryDeviceModel | typeof ShellyNgDiscoverySessionModel | typeof ShellyNgMappingReloadCacheStatsModel | typeof ShellyNgMappingReloadModel | typeof ShellyNgAdoptionResultModel | typeof ShellyNgDeviceInfoResponseModel | typeof ShellyNgSupportedDevicesResponseModel | typeof ShellyNgDiscoverySessionResponseModel | typeof ShellyNgMappingReloadResponseModel | typeof ShellyNgAdoptionResponseModel | typeof ShellyNgWebsocketsConfigModel | typeof ShellyNgUpdatePluginConfigMdnsDto | typeof ShellyNgUpdatePluginConfigWebsocketsDto)[];
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DEVICES_SHELLY_NG_PLUGIN_SWAGGER_EXTRA_MODELS = void 0;
4
4
  const adopt_devices_dto_1 = require("./dto/adopt-devices.dto");
5
+ const cover_recovery_dto_1 = require("./dto/cover-recovery.dto");
5
6
  const create_channel_property_dto_1 = require("./dto/create-channel-property.dto");
6
7
  const create_channel_dto_1 = require("./dto/create-channel.dto");
7
8
  const create_device_dto_1 = require("./dto/create-device.dto");
@@ -11,9 +12,16 @@ const update_config_dto_1 = require("./dto/update-config.dto");
11
12
  const update_device_dto_1 = require("./dto/update-device.dto");
12
13
  const devices_shelly_ng_entity_1 = require("./entities/devices-shelly-ng.entity");
13
14
  const config_model_1 = require("./models/config.model");
15
+ const cover_recovery_model_1 = require("./models/cover-recovery.model");
14
16
  const shelly_ng_response_model_1 = require("./models/shelly-ng-response.model");
15
17
  const shelly_ng_model_1 = require("./models/shelly-ng.model");
16
18
  exports.DEVICES_SHELLY_NG_PLUGIN_SWAGGER_EXTRA_MODELS = [
19
+ cover_recovery_dto_1.RecoverCoverOrderingDto,
20
+ cover_recovery_dto_1.ReqRecoverCoverOrderingDto,
21
+ cover_recovery_model_1.CoverRecoveryModel,
22
+ cover_recovery_model_1.CoverRecoveryContextModel,
23
+ cover_recovery_model_1.CoverRecoveryResponseModel,
24
+ cover_recovery_model_1.CoverRecoveryContextResponseModel,
17
25
  create_device_dto_1.CreateShellyNgDeviceDto,
18
26
  update_device_dto_1.UpdateShellyNgDeviceDto,
19
27
  create_channel_dto_1.CreateShellyNgChannelDto,
@@ -1 +1 @@
1
- {"version":3,"file":"devices-shelly-ng.openapi.js","sourceRoot":"","sources":["../../../src/plugins/devices-shelly-ng/devices-shelly-ng.openapi.ts"],"names":[],"mappings":";;;AAGA,+DAA0E;AAC1E,mFAAqF;AACrF,iEAAoE;AACpE,+DAAkE;AAClE,mFAAqF;AACrF,iEAAoE;AACpE,+DAIiC;AACjC,+DAAkE;AAClE,kFAI6C;AAC7C,wDAAoH;AACpH,gFAM2C;AAC3C,8DAakC;AAErB,QAAA,6CAA6C,GAAG;IAE5D,2CAAuB;IACvB,2CAAuB;IACvB,6CAAwB;IACxB,6CAAwB;IACxB,8DAAgC;IAChC,8DAAgC;IAChC,iDAA6B;IAC7B,qDAAiC;IACjC,2DAAuC;IACvC,kCAAc;IACd,mCAAe;IAEf,wDAA6B;IAC7B,0DAA+B;IAC/B,gEAAqC;IACrC,6DAAkC;IAClC,gEAAqC;IAErC,6CAA2B;IAC3B,4DAA0C;IAC1C,8CAA4B;IAC5B,+CAA6B;IAC7B,sDAAoC;IACpC,4CAA0B;IAC1B,uDAAqC;IACrC,6DAA2C;IAC3C,8CAA4B;IAC5B,kDAAgC;IAChC,uDAAqC;IACrC,yCAAuB;IACvB,sCAAuB;IACvB,4CAA6B;IAC7B,kCAAmB;IAEnB,+CAAoB;IACpB,gDAAqB;IACrB,wDAA6B;CAC7B,CAAC"}
1
+ {"version":3,"file":"devices-shelly-ng.openapi.js","sourceRoot":"","sources":["../../../src/plugins/devices-shelly-ng/devices-shelly-ng.openapi.ts"],"names":[],"mappings":";;;AAGA,+DAA0E;AAC1E,iEAA+F;AAC/F,mFAAqF;AACrF,iEAAoE;AACpE,+DAAkE;AAClE,mFAAqF;AACrF,iEAAoE;AACpE,+DAIiC;AACjC,+DAAkE;AAClE,kFAI6C;AAC7C,wDAAoH;AACpH,wEAKuC;AACvC,gFAM2C;AAC3C,8DAakC;AAErB,QAAA,6CAA6C,GAAG;IAC5D,4CAAuB;IACvB,+CAA0B;IAC1B,yCAAkB;IAClB,gDAAyB;IACzB,iDAA0B;IAC1B,wDAAiC;IAEjC,2CAAuB;IACvB,2CAAuB;IACvB,6CAAwB;IACxB,6CAAwB;IACxB,8DAAgC;IAChC,8DAAgC;IAChC,iDAA6B;IAC7B,qDAAiC;IACjC,2DAAuC;IACvC,kCAAc;IACd,mCAAe;IAEf,wDAA6B;IAC7B,0DAA+B;IAC/B,gEAAqC;IACrC,6DAAkC;IAClC,gEAAqC;IAErC,6CAA2B;IAC3B,4DAA0C;IAC1C,8CAA4B;IAC5B,+CAA6B;IAC7B,sDAAoC;IACpC,4CAA0B;IAC1B,uDAAqC;IACrC,6DAA2C;IAC3C,8CAA4B;IAC5B,kDAAgC;IAChC,uDAAqC;IACrC,yCAAuB;IACvB,sCAAuB;IACvB,4CAA6B;IAC7B,kCAAmB;IAEnB,+CAAoB;IACpB,gDAAqB;IACrB,wDAA6B;CAC7B,CAAC"}