@smarthome.exchange/integrations 0.2.0 → 2.0.0
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.
- package/changelog.md +171 -0
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/cli/classes.cliruntime.d.ts +1 -1
- package/dist_ts/cli/commands.discover.js +1 -1
- package/dist_ts/cli/commands.setup.d.ts +1 -1
- package/dist_ts/core/classes.configrecord.d.ts +15 -0
- package/dist_ts/core/classes.configrecord.js +93 -0
- package/dist_ts/core/classes.configstore.d.ts +40 -10
- package/dist_ts/core/classes.configstore.js +355 -32
- package/dist_ts/core/classes.discoveryengine.js +12 -2
- package/dist_ts/core/classes.nativehomeadmission.d.ts +19 -0
- package/dist_ts/core/classes.nativehomeadmission.js +84 -0
- package/dist_ts/core/classes.nativeintegrationowner.d.ts +79 -0
- package/dist_ts/core/classes.nativeintegrationowner.js +269 -0
- package/dist_ts/core/classes.runtimemanager.js +1 -1
- package/dist_ts/core/classes.simplelocalintegration.js +1 -1
- package/dist_ts/core/errors.d.ts +2 -2
- package/dist_ts/core/errors.js +1 -1
- package/dist_ts/core/index.d.ts +2 -0
- package/dist_ts/core/index.js +3 -1
- package/dist_ts/core/types.d.ts +27 -4
- package/dist_ts/index.d.ts +4 -1
- package/dist_ts/index.js +7 -1
- package/dist_ts/integrations/adguard/adguard.classes.client.js +1 -1
- package/dist_ts/integrations/adguard/adguard.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/adguard/adguard.classes.integration.js +1 -1
- package/dist_ts/integrations/adguard/adguard.discovery.d.ts +1 -1
- package/dist_ts/integrations/adguard/adguard.mapper.js +1 -1
- package/dist_ts/integrations/agent_dvr/agent_dvr.classes.client.js +1 -1
- package/dist_ts/integrations/agent_dvr/agent_dvr.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/agent_dvr/agent_dvr.classes.integration.js +1 -1
- package/dist_ts/integrations/agent_dvr/agent_dvr.discovery.d.ts +3 -3
- package/dist_ts/integrations/agent_dvr/agent_dvr.mapper.js +1 -1
- package/dist_ts/integrations/agent_dvr/agent_dvr.types.d.ts +1 -1
- package/dist_ts/integrations/airgradient/airgradient.classes.client.js +1 -1
- package/dist_ts/integrations/airgradient/airgradient.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/airgradient/airgradient.classes.integration.js +1 -1
- package/dist_ts/integrations/airgradient/airgradient.discovery.d.ts +2 -2
- package/dist_ts/integrations/airos/airos.classes.client.js +1 -1
- package/dist_ts/integrations/airos/airos.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/airos/airos.classes.integration.js +1 -1
- package/dist_ts/integrations/airos/airos.discovery.d.ts +4 -4
- package/dist_ts/integrations/airos/airos.discovery.js +1 -1
- package/dist_ts/integrations/airos/airos.mapper.js +1 -1
- package/dist_ts/integrations/amcrest/amcrest.classes.client.js +1 -1
- package/dist_ts/integrations/amcrest/amcrest.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/amcrest/amcrest.classes.integration.js +1 -1
- package/dist_ts/integrations/amcrest/amcrest.discovery.d.ts +3 -3
- package/dist_ts/integrations/amcrest/amcrest.types.d.ts +5 -5
- package/dist_ts/integrations/android_ip_webcam/android_ip_webcam.classes.client.js +1 -1
- package/dist_ts/integrations/android_ip_webcam/android_ip_webcam.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/android_ip_webcam/android_ip_webcam.classes.integration.js +1 -1
- package/dist_ts/integrations/android_ip_webcam/android_ip_webcam.discovery.d.ts +1 -1
- package/dist_ts/integrations/androidtv/androidtv.classes.client.js +1 -1
- package/dist_ts/integrations/androidtv/androidtv.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/androidtv/androidtv.classes.integration.js +1 -1
- package/dist_ts/integrations/androidtv/androidtv.discovery.d.ts +3 -3
- package/dist_ts/integrations/androidtv_remote/androidtv_remote.classes.client.js +1 -1
- package/dist_ts/integrations/androidtv_remote/androidtv_remote.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/androidtv_remote/androidtv_remote.classes.integration.js +1 -1
- package/dist_ts/integrations/androidtv_remote/androidtv_remote.discovery.d.ts +2 -2
- package/dist_ts/integrations/apcupsd/apcupsd.classes.client.js +1 -1
- package/dist_ts/integrations/apcupsd/apcupsd.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/apcupsd/apcupsd.classes.integration.js +1 -1
- package/dist_ts/integrations/apcupsd/apcupsd.discovery.d.ts +1 -1
- package/dist_ts/integrations/apcupsd/apcupsd.mapper.js +1 -1
- package/dist_ts/integrations/arcam_fmj/arcam_fmj.classes.client.js +1 -1
- package/dist_ts/integrations/arcam_fmj/arcam_fmj.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/arcam_fmj/arcam_fmj.classes.integration.js +1 -1
- package/dist_ts/integrations/arcam_fmj/arcam_fmj.discovery.d.ts +2 -2
- package/dist_ts/integrations/asuswrt/asuswrt.classes.client.js +1 -1
- package/dist_ts/integrations/asuswrt/asuswrt.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/asuswrt/asuswrt.classes.integration.js +1 -1
- package/dist_ts/integrations/asuswrt/asuswrt.discovery.d.ts +1 -1
- package/dist_ts/integrations/asuswrt/asuswrt.mapper.js +1 -1
- package/dist_ts/integrations/axis/axis.classes.client.js +1 -1
- package/dist_ts/integrations/axis/axis.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/axis/axis.classes.integration.js +1 -1
- package/dist_ts/integrations/axis/axis.discovery.d.ts +3 -3
- package/dist_ts/integrations/blebox/blebox.classes.client.js +1 -1
- package/dist_ts/integrations/blebox/blebox.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/blebox/blebox.classes.integration.js +1 -1
- package/dist_ts/integrations/blebox/blebox.discovery.d.ts +2 -2
- package/dist_ts/integrations/bluesound/bluesound.classes.client.d.ts +9 -4
- package/dist_ts/integrations/bluesound/bluesound.classes.client.js +1 -1
- package/dist_ts/integrations/bluesound/bluesound.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/bluesound/bluesound.classes.integration.js +1 -1
- package/dist_ts/integrations/bluesound/bluesound.discovery.d.ts +2 -2
- package/dist_ts/integrations/bluetooth_le_tracker/bluetooth_le_tracker.classes.client.js +1 -1
- package/dist_ts/integrations/bluetooth_le_tracker/bluetooth_le_tracker.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/bluetooth_le_tracker/bluetooth_le_tracker.classes.integration.js +1 -1
- package/dist_ts/integrations/bluetooth_le_tracker/bluetooth_le_tracker.discovery.d.ts +2 -2
- package/dist_ts/integrations/bluetooth_le_tracker/bluetooth_le_tracker.mapper.js +1 -1
- package/dist_ts/integrations/bond/bond.classes.client.js +1 -1
- package/dist_ts/integrations/bond/bond.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/bond/bond.classes.integration.js +1 -1
- package/dist_ts/integrations/bond/bond.discovery.d.ts +3 -3
- package/dist_ts/integrations/bond/bond.mapper.js +1 -1
- package/dist_ts/integrations/bond/bond.types.d.ts +71 -71
- package/dist_ts/integrations/bosch_shc/bosch_shc.classes.client.js +1 -1
- package/dist_ts/integrations/bosch_shc/bosch_shc.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/bosch_shc/bosch_shc.classes.integration.js +1 -1
- package/dist_ts/integrations/bosch_shc/bosch_shc.discovery.d.ts +2 -2
- package/dist_ts/integrations/bosch_shc/bosch_shc.mapper.js +1 -1
- package/dist_ts/integrations/braviatv/braviatv.classes.client.d.ts +23 -72
- package/dist_ts/integrations/braviatv/braviatv.classes.client.js +265 -625
- package/dist_ts/integrations/braviatv/braviatv.classes.configflow.d.ts +7 -7
- package/dist_ts/integrations/braviatv/braviatv.classes.configflow.js +51 -68
- package/dist_ts/integrations/braviatv/braviatv.classes.integration.d.ts +9 -12
- package/dist_ts/integrations/braviatv/braviatv.classes.integration.js +186 -135
- package/dist_ts/integrations/braviatv/braviatv.discovery.d.ts +3 -3
- package/dist_ts/integrations/braviatv/braviatv.discovery.js +12 -11
- package/dist_ts/integrations/braviatv/braviatv.mapper.d.ts +6 -14
- package/dist_ts/integrations/braviatv/braviatv.mapper.js +37 -131
- package/dist_ts/integrations/braviatv/braviatv.types.d.ts +55 -133
- package/dist_ts/integrations/braviatv/braviatv.validation.d.ts +7 -0
- package/dist_ts/integrations/braviatv/braviatv.validation.js +72 -0
- package/dist_ts/integrations/broadlink/broadlink.actions.d.ts +2 -0
- package/dist_ts/integrations/broadlink/broadlink.actions.js +36 -0
- package/dist_ts/integrations/broadlink/broadlink.classes.client.d.ts +21 -19
- package/dist_ts/integrations/broadlink/broadlink.classes.client.js +185 -124
- package/dist_ts/integrations/broadlink/broadlink.classes.configflow.d.ts +5 -4
- package/dist_ts/integrations/broadlink/broadlink.classes.configflow.js +64 -83
- package/dist_ts/integrations/broadlink/broadlink.classes.integration.d.ts +17 -20
- package/dist_ts/integrations/broadlink/broadlink.classes.integration.js +114 -59
- package/dist_ts/integrations/broadlink/broadlink.discovery.d.ts +3 -3
- package/dist_ts/integrations/broadlink/broadlink.mapper.d.ts +3 -2
- package/dist_ts/integrations/broadlink/broadlink.mapper.js +2 -1
- package/dist_ts/integrations/broadlink/broadlink.packet.d.ts +2 -2
- package/dist_ts/integrations/broadlink/broadlink.packet.js +1 -1
- package/dist_ts/integrations/broadlink/broadlink.selected.mapper.d.ts +10 -0
- package/dist_ts/integrations/broadlink/broadlink.selected.mapper.js +41 -0
- package/dist_ts/integrations/broadlink/broadlink.types.d.ts +43 -7
- package/dist_ts/integrations/broadlink/broadlink.validation.d.ts +7 -0
- package/dist_ts/integrations/broadlink/broadlink.validation.js +63 -0
- package/dist_ts/integrations/brother/brother.classes.client.js +1 -1
- package/dist_ts/integrations/brother/brother.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/brother/brother.classes.integration.js +1 -1
- package/dist_ts/integrations/brother/brother.constants.d.ts +12 -12
- package/dist_ts/integrations/brother/brother.discovery.d.ts +2 -2
- package/dist_ts/integrations/brother/brother.mapper.js +1 -1
- package/dist_ts/integrations/cast/cast.classes.client.js +1 -1
- package/dist_ts/integrations/cast/cast.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/cast/cast.classes.integration.js +1 -1
- package/dist_ts/integrations/cast/cast.discovery.d.ts +2 -2
- package/dist_ts/integrations/channels/channels.classes.client.js +1 -1
- package/dist_ts/integrations/channels/channels.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/channels/channels.classes.integration.js +1 -1
- package/dist_ts/integrations/channels/channels.discovery.d.ts +2 -2
- package/dist_ts/integrations/cisco_ios/cisco_ios.classes.client.js +1 -1
- package/dist_ts/integrations/cisco_ios/cisco_ios.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/cisco_ios/cisco_ios.classes.integration.js +1 -1
- package/dist_ts/integrations/cisco_ios/cisco_ios.discovery.d.ts +2 -2
- package/dist_ts/integrations/cisco_ios/cisco_ios.mapper.js +1 -1
- package/dist_ts/integrations/daikin/daikin.classes.client.d.ts +10 -52
- package/dist_ts/integrations/daikin/daikin.classes.client.js +55 -614
- package/dist_ts/integrations/daikin/daikin.classes.configflow.d.ts +8 -12
- package/dist_ts/integrations/daikin/daikin.classes.configflow.js +77 -138
- package/dist_ts/integrations/daikin/daikin.classes.integration.d.ts +8 -25
- package/dist_ts/integrations/daikin/daikin.classes.integration.js +175 -67
- package/dist_ts/integrations/daikin/daikin.discovery.d.ts +11 -24
- package/dist_ts/integrations/daikin/daikin.discovery.js +98 -305
- package/dist_ts/integrations/daikin/daikin.mapper.d.ts +6 -7
- package/dist_ts/integrations/daikin/daikin.mapper.js +95 -155
- package/dist_ts/integrations/daikin/daikin.types.d.ts +24 -44
- package/dist_ts/integrations/daikin/daikin.types.js +1 -1
- package/dist_ts/integrations/daikin/daikin.validation.d.ts +5 -0
- package/dist_ts/integrations/daikin/daikin.validation.js +53 -0
- package/dist_ts/integrations/ddwrt/ddwrt.classes.client.js +1 -1
- package/dist_ts/integrations/ddwrt/ddwrt.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/ddwrt/ddwrt.classes.integration.js +1 -1
- package/dist_ts/integrations/ddwrt/ddwrt.discovery.d.ts +3 -3
- package/dist_ts/integrations/ddwrt/ddwrt.mapper.js +1 -1
- package/dist_ts/integrations/deconz/deconz.classes.client.d.ts +31 -22
- package/dist_ts/integrations/deconz/deconz.classes.client.js +302 -153
- package/dist_ts/integrations/deconz/deconz.classes.configflow.js +43 -26
- package/dist_ts/integrations/deconz/deconz.classes.integration.d.ts +3 -1
- package/dist_ts/integrations/deconz/deconz.classes.integration.js +133 -20
- package/dist_ts/integrations/deconz/deconz.discovery.d.ts +4 -4
- package/dist_ts/integrations/deconz/deconz.mapper.d.ts +2 -1
- package/dist_ts/integrations/deconz/deconz.mapper.js +23 -18
- package/dist_ts/integrations/deconz/deconz.types.d.ts +34 -3
- package/dist_ts/integrations/deconz/deconz.validation.d.ts +14 -0
- package/dist_ts/integrations/deconz/deconz.validation.js +269 -0
- package/dist_ts/integrations/deluge/deluge.classes.client.js +1 -1
- package/dist_ts/integrations/deluge/deluge.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/deluge/deluge.classes.integration.js +1 -1
- package/dist_ts/integrations/deluge/deluge.discovery.d.ts +2 -2
- package/dist_ts/integrations/denon/denon.classes.client.js +1 -1
- package/dist_ts/integrations/denon/denon.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/denon/denon.classes.integration.js +1 -1
- package/dist_ts/integrations/denon/denon.discovery.d.ts +1 -1
- package/dist_ts/integrations/denonavr/denonavr.classes.client.d.ts +31 -40
- package/dist_ts/integrations/denonavr/denonavr.classes.client.js +149 -404
- package/dist_ts/integrations/denonavr/denonavr.classes.configflow.d.ts +7 -2
- package/dist_ts/integrations/denonavr/denonavr.classes.configflow.js +44 -36
- package/dist_ts/integrations/denonavr/denonavr.classes.integration.d.ts +7 -12
- package/dist_ts/integrations/denonavr/denonavr.classes.integration.js +192 -113
- package/dist_ts/integrations/denonavr/denonavr.discovery.d.ts +10 -18
- package/dist_ts/integrations/denonavr/denonavr.discovery.js +71 -193
- package/dist_ts/integrations/denonavr/denonavr.mapper.d.ts +5 -13
- package/dist_ts/integrations/denonavr/denonavr.mapper.js +35 -159
- package/dist_ts/integrations/denonavr/denonavr.types.d.ts +55 -90
- package/dist_ts/integrations/denonavr/denonavr.validation.d.ts +10 -0
- package/dist_ts/integrations/denonavr/denonavr.validation.js +86 -0
- package/dist_ts/integrations/devolo_home_network/devolo_home_network.classes.client.js +1 -1
- package/dist_ts/integrations/devolo_home_network/devolo_home_network.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/devolo_home_network/devolo_home_network.classes.integration.js +1 -1
- package/dist_ts/integrations/devolo_home_network/devolo_home_network.discovery.d.ts +3 -3
- package/dist_ts/integrations/devolo_home_network/devolo_home_network.mapper.js +1 -1
- package/dist_ts/integrations/directv/directv.classes.client.js +1 -1
- package/dist_ts/integrations/directv/directv.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/directv/directv.classes.integration.js +1 -1
- package/dist_ts/integrations/directv/directv.discovery.d.ts +2 -2
- package/dist_ts/integrations/directv/directv.types.d.ts +1 -1
- package/dist_ts/integrations/dlink/dlink.classes.client.d.ts +6 -3
- package/dist_ts/integrations/dlink/dlink.classes.client.js +1 -1
- package/dist_ts/integrations/dlink/dlink.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/dlink/dlink.classes.integration.js +1 -1
- package/dist_ts/integrations/dlink/dlink.discovery.d.ts +2 -2
- package/dist_ts/integrations/dlink/dlink.mapper.js +1 -1
- package/dist_ts/integrations/dlna_dmr/dlna_dmr.classes.client.js +1 -1
- package/dist_ts/integrations/dlna_dmr/dlna_dmr.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/dlna_dmr/dlna_dmr.classes.integration.js +1 -1
- package/dist_ts/integrations/dlna_dmr/dlna_dmr.discovery.d.ts +2 -2
- package/dist_ts/integrations/dlna_dms/dlna_dms.classes.client.js +1 -1
- package/dist_ts/integrations/dlna_dms/dlna_dms.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/dlna_dms/dlna_dms.classes.integration.js +1 -1
- package/dist_ts/integrations/dlna_dms/dlna_dms.discovery.d.ts +2 -2
- package/dist_ts/integrations/doorbird/doorbird.classes.client.js +1 -1
- package/dist_ts/integrations/doorbird/doorbird.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/doorbird/doorbird.classes.integration.js +1 -1
- package/dist_ts/integrations/doorbird/doorbird.discovery.d.ts +2 -2
- package/dist_ts/integrations/dsmr/dsmr.classes.client.js +1 -1
- package/dist_ts/integrations/dsmr/dsmr.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/dsmr/dsmr.classes.integration.js +1 -1
- package/dist_ts/integrations/dsmr/dsmr.discovery.d.ts +1 -1
- package/dist_ts/integrations/dsmr/dsmr.parser.js +1 -1
- package/dist_ts/integrations/dunehd/dunehd.classes.client.js +1 -1
- package/dist_ts/integrations/dunehd/dunehd.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/dunehd/dunehd.classes.integration.js +1 -1
- package/dist_ts/integrations/dunehd/dunehd.discovery.d.ts +3 -3
- package/dist_ts/integrations/edimax/edimax.classes.client.js +1 -1
- package/dist_ts/integrations/edl21/edl21.classes.client.js +1 -1
- package/dist_ts/integrations/egardia/egardia.classes.client.js +1 -1
- package/dist_ts/integrations/elgato/elgato.classes.client.js +1 -1
- package/dist_ts/integrations/elgato/elgato.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/elgato/elgato.classes.integration.js +1 -1
- package/dist_ts/integrations/elgato/elgato.discovery.d.ts +3 -3
- package/dist_ts/integrations/emby/emby.classes.client.js +1 -1
- package/dist_ts/integrations/emby/emby.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/emby/emby.classes.integration.js +1 -1
- package/dist_ts/integrations/emby/emby.discovery.d.ts +3 -3
- package/dist_ts/integrations/emoncms_history/emoncms_history.classes.client.js +1 -1
- package/dist_ts/integrations/emonitor/emonitor.classes.client.js +1 -1
- package/dist_ts/integrations/emulated_hue/emulated_hue.classes.client.js +1 -1
- package/dist_ts/integrations/emulated_kasa/emulated_kasa.classes.client.js +1 -1
- package/dist_ts/integrations/emulated_roku/emulated_roku.classes.client.js +1 -1
- package/dist_ts/integrations/energenie_power_sockets/energenie_power_sockets.classes.client.js +1 -1
- package/dist_ts/integrations/enigma2/enigma2.classes.client.js +1 -1
- package/dist_ts/integrations/enocean/enocean.classes.client.js +1 -1
- package/dist_ts/integrations/esphome/esphome.classes.client.d.ts +35 -18
- package/dist_ts/integrations/esphome/esphome.classes.client.js +267 -77
- package/dist_ts/integrations/esphome/esphome.classes.configflow.js +2 -4
- package/dist_ts/integrations/esphome/esphome.classes.integration.d.ts +22 -11
- package/dist_ts/integrations/esphome/esphome.classes.integration.js +68 -61
- package/dist_ts/integrations/esphome/esphome.discovery.d.ts +2 -2
- package/dist_ts/integrations/esphome/esphome.discovery.js +2 -2
- package/dist_ts/integrations/esphome/esphome.mapper.d.ts +1 -2
- package/dist_ts/integrations/esphome/esphome.mapper.js +79 -36
- package/dist_ts/integrations/esphome/esphome.types.d.ts +2 -0
- package/dist_ts/integrations/fibaro/fibaro.classes.client.js +1 -1
- package/dist_ts/integrations/file/file.classes.client.js +1 -1
- package/dist_ts/integrations/filesize/filesize.classes.client.js +1 -1
- package/dist_ts/integrations/flexit_bacnet/flexit_bacnet.classes.client.js +1 -1
- package/dist_ts/integrations/flic/flic.classes.client.js +1 -1
- package/dist_ts/integrations/flux_led/flux_led.classes.client.js +1 -1
- package/dist_ts/integrations/folder/folder.classes.client.js +1 -1
- package/dist_ts/integrations/folder_watcher/folder_watcher.classes.client.js +1 -1
- package/dist_ts/integrations/forked_daapd/forked_daapd.classes.client.js +1 -1
- package/dist_ts/integrations/forked_daapd/forked_daapd.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/forked_daapd/forked_daapd.classes.integration.js +1 -1
- package/dist_ts/integrations/forked_daapd/forked_daapd.discovery.d.ts +2 -2
- package/dist_ts/integrations/foscam/foscam.classes.client.js +1 -1
- package/dist_ts/integrations/foscam/foscam.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/foscam/foscam.classes.integration.js +1 -1
- package/dist_ts/integrations/foscam/foscam.discovery.d.ts +3 -3
- package/dist_ts/integrations/foscam/foscam.types.d.ts +2 -2
- package/dist_ts/integrations/freebox/freebox.classes.client.js +1 -1
- package/dist_ts/integrations/freebox/freebox.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/freebox/freebox.classes.integration.js +1 -1
- package/dist_ts/integrations/freebox/freebox.discovery.d.ts +2 -2
- package/dist_ts/integrations/freebox/freebox.mapper.js +1 -1
- package/dist_ts/integrations/freebox/freebox.types.d.ts +11 -11
- package/dist_ts/integrations/fritz/fritz.classes.client.js +1 -1
- package/dist_ts/integrations/fritz/fritz.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/fritz/fritz.classes.integration.js +1 -1
- package/dist_ts/integrations/fritz/fritz.discovery.d.ts +3 -3
- package/dist_ts/integrations/fritz/fritz.mapper.js +1 -1
- package/dist_ts/integrations/fritzbox_callmonitor/fritzbox_callmonitor.classes.client.js +1 -1
- package/dist_ts/integrations/fritzbox_callmonitor/fritzbox_callmonitor.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/fritzbox_callmonitor/fritzbox_callmonitor.classes.integration.js +1 -1
- package/dist_ts/integrations/fritzbox_callmonitor/fritzbox_callmonitor.discovery.d.ts +3 -3
- package/dist_ts/integrations/fritzbox_callmonitor/fritzbox_callmonitor.mapper.js +1 -1
- package/dist_ts/integrations/fronius/fronius.classes.client.js +1 -1
- package/dist_ts/integrations/fronius/fronius.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/fronius/fronius.classes.integration.js +1 -1
- package/dist_ts/integrations/fronius/fronius.discovery.d.ts +2 -2
- package/dist_ts/integrations/fronius/fronius.mapper.js +1 -1
- package/dist_ts/integrations/frontier_silicon/frontier_silicon.classes.client.js +1 -1
- package/dist_ts/integrations/frontier_silicon/frontier_silicon.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/frontier_silicon/frontier_silicon.classes.integration.js +1 -1
- package/dist_ts/integrations/frontier_silicon/frontier_silicon.discovery.d.ts +2 -2
- package/dist_ts/integrations/fully_kiosk/fully_kiosk.classes.client.js +1 -1
- package/dist_ts/integrations/fully_kiosk/fully_kiosk.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/fully_kiosk/fully_kiosk.classes.integration.js +1 -1
- package/dist_ts/integrations/fully_kiosk/fully_kiosk.discovery.d.ts +2 -2
- package/dist_ts/integrations/fully_kiosk/fully_kiosk.mapper.js +1 -1
- package/dist_ts/integrations/generated/index.d.ts +1 -1
- package/dist_ts/integrations/generated/index.js +5 -7
- package/dist_ts/integrations/generic/generic.classes.client.js +1 -1
- package/dist_ts/integrations/geniushub/geniushub.classes.client.js +1 -1
- package/dist_ts/integrations/glances/glances.classes.client.js +1 -1
- package/dist_ts/integrations/glances/glances.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/glances/glances.classes.integration.js +1 -1
- package/dist_ts/integrations/glances/glances.discovery.d.ts +2 -2
- package/dist_ts/integrations/go2rtc/go2rtc.classes.client.js +1 -1
- package/dist_ts/integrations/go2rtc/go2rtc.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/go2rtc/go2rtc.classes.integration.js +1 -1
- package/dist_ts/integrations/go2rtc/go2rtc.discovery.d.ts +2 -2
- package/dist_ts/integrations/go2rtc/go2rtc.mapper.js +1 -1
- package/dist_ts/integrations/goalzero/goalzero.classes.client.js +1 -1
- package/dist_ts/integrations/gogogate2/gogogate2.classes.client.js +1 -1
- package/dist_ts/integrations/goodwe/goodwe.classes.client.js +1 -1
- package/dist_ts/integrations/goodwe/goodwe.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/goodwe/goodwe.classes.integration.js +1 -1
- package/dist_ts/integrations/goodwe/goodwe.discovery.d.ts +1 -1
- package/dist_ts/integrations/goodwe/goodwe.types.d.ts +8 -8
- package/dist_ts/integrations/google_wifi/google_wifi.classes.client.js +1 -1
- package/dist_ts/integrations/govee_ble/govee_ble.classes.client.js +1 -1
- package/dist_ts/integrations/govee_light_local/govee_light_local.classes.client.js +1 -1
- package/dist_ts/integrations/gpsd/gpsd.classes.client.js +1 -1
- package/dist_ts/integrations/graphite/graphite.classes.client.js +1 -1
- package/dist_ts/integrations/gree/gree.classes.client.js +1 -1
- package/dist_ts/integrations/harman_kardon_avr/harman_kardon_avr.classes.client.js +1 -1
- package/dist_ts/integrations/harman_kardon_avr/harman_kardon_avr.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/harman_kardon_avr/harman_kardon_avr.classes.integration.js +1 -1
- package/dist_ts/integrations/harman_kardon_avr/harman_kardon_avr.discovery.d.ts +1 -1
- package/dist_ts/integrations/harman_kardon_avr/harman_kardon_avr.types.d.ts +12 -12
- package/dist_ts/integrations/harmony/harmony.classes.client.js +1 -1
- package/dist_ts/integrations/harmony/harmony.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/harmony/harmony.classes.integration.js +1 -1
- package/dist_ts/integrations/harmony/harmony.discovery.d.ts +2 -2
- package/dist_ts/integrations/hddtemp/hddtemp.classes.client.js +1 -1
- package/dist_ts/integrations/hddtemp/hddtemp.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/hddtemp/hddtemp.classes.integration.js +1 -1
- package/dist_ts/integrations/hddtemp/hddtemp.discovery.d.ts +2 -2
- package/dist_ts/integrations/hdfury/hdfury.classes.client.js +1 -1
- package/dist_ts/integrations/hdmi_cec/hdmi_cec.classes.client.js +1 -1
- package/dist_ts/integrations/heatmiser/heatmiser.classes.client.js +1 -1
- package/dist_ts/integrations/hegel/hegel.classes.client.js +1 -1
- package/dist_ts/integrations/heos/heos.classes.client.js +1 -1
- package/dist_ts/integrations/heos/heos.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/heos/heos.classes.integration.js +1 -1
- package/dist_ts/integrations/heos/heos.discovery.d.ts +3 -3
- package/dist_ts/integrations/hikvision/hikvision.classes.client.js +1 -1
- package/dist_ts/integrations/hikvision/hikvision.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/hikvision/hikvision.classes.integration.js +1 -1
- package/dist_ts/integrations/hikvision/hikvision.discovery.d.ts +3 -3
- package/dist_ts/integrations/hikvisioncam/hikvisioncam.classes.client.js +1 -1
- package/dist_ts/integrations/hisense_aehw4a1/hisense_aehw4a1.classes.client.js +1 -1
- package/dist_ts/integrations/hitron_coda/hitron_coda.classes.client.js +1 -1
- package/dist_ts/integrations/hlk_sw16/hlk_sw16.classes.client.js +1 -1
- package/dist_ts/integrations/holiday/holiday.classes.client.js +1 -1
- package/dist_ts/integrations/homeassistant/homeassistant.classes.client.d.ts +7 -1
- package/dist_ts/integrations/homeassistant/homeassistant.classes.client.js +174 -50
- package/dist_ts/integrations/homeassistant/homeassistant.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/homeassistant/homeassistant.classes.integration.js +1 -1
- package/dist_ts/integrations/homeassistant/homeassistant.classes.runtime.d.ts +2 -0
- package/dist_ts/integrations/homeassistant/homeassistant.classes.runtime.js +35 -3
- package/dist_ts/integrations/homeassistant/homeassistant.mapper.d.ts +4 -4
- package/dist_ts/integrations/homeassistant/homeassistant.mapper.js +25 -36
- package/dist_ts/integrations/homeassistant/homeassistant.types.d.ts +10 -0
- package/dist_ts/integrations/homeassistant/homeassistant.validation.d.ts +9 -0
- package/dist_ts/integrations/homeassistant/homeassistant.validation.js +137 -0
- package/dist_ts/integrations/homee/homee.classes.client.js +1 -1
- package/dist_ts/integrations/homekit_controller/homekit_controller.classes.client.js +1 -1
- package/dist_ts/integrations/homekit_controller/homekit_controller.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/homekit_controller/homekit_controller.classes.integration.js +1 -1
- package/dist_ts/integrations/homekit_controller/homekit_controller.discovery.d.ts +2 -2
- package/dist_ts/integrations/homekit_controller/homekit_controller.mapper.js +1 -1
- package/dist_ts/integrations/homematic/homematic.classes.client.d.ts +2 -2
- package/dist_ts/integrations/homematic/homematic.classes.client.js +1 -1
- package/dist_ts/integrations/homematic/homematic.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/homematic/homematic.classes.integration.js +1 -1
- package/dist_ts/integrations/homematic/homematic.constants.d.ts +2 -2
- package/dist_ts/integrations/homematic/homematic.discovery.d.ts +2 -2
- package/dist_ts/integrations/homewizard/homewizard.classes.client.js +1 -1
- package/dist_ts/integrations/homewizard/homewizard.classes.integration.d.ts +3 -3
- package/dist_ts/integrations/homewizard/homewizard.classes.integration.js +1 -1
- package/dist_ts/integrations/homewizard/homewizard.discovery.d.ts +3 -3
- package/dist_ts/integrations/homewizard/homewizard.mapper.js +1 -1
- package/dist_ts/integrations/homewizard/homewizard.types.d.ts +10 -10
- package/dist_ts/integrations/huawei_lte/huawei_lte.classes.client.js +1 -1
- package/dist_ts/integrations/huawei_lte/huawei_lte.classes.integration.d.ts +2 -2
- package/dist_ts/integrations/huawei_lte/huawei_lte.classes.integration.js +1 -1
- package/dist_ts/integrations/huawei_lte/huawei_lte.discovery.d.ts +3 -3
- package/dist_ts/integrations/huawei_lte/huawei_lte.mapper.js +1 -1
- package/dist_ts/integrations/huawei_lte/huawei_lte.types.d.ts +1 -1
- package/dist_ts/integrations/hue/hue.classes.client.d.ts +13 -5
- package/dist_ts/integrations/hue/hue.classes.client.js +278 -23
- package/dist_ts/integrations/hue/hue.classes.configflow.js +34 -14
- package/dist_ts/integrations/hue/hue.classes.integration.d.ts +2 -1
- package/dist_ts/integrations/hue/hue.classes.integration.js +85 -25
- package/dist_ts/integrations/hue/hue.discovery.d.ts +2 -2
- package/dist_ts/integrations/hue/hue.discovery.js +79 -26
- package/dist_ts/integrations/hue/hue.mapper.d.ts +0 -1
- package/dist_ts/integrations/hue/hue.mapper.js +26 -54
- package/dist_ts/integrations/hue/hue.types.d.ts +14 -7
- package/dist_ts/integrations/hue/hue.validation.d.ts +11 -0
- package/dist_ts/integrations/hue/hue.validation.js +160 -0
- package/dist_ts/integrations/hunterdouglas_powerview/hunterdouglas_powerview.classes.client.js +1 -1
- package/dist_ts/integrations/hunterdouglas_powerview/hunterdouglas_powerview.classes.integration.d.ts +2 -2
- package/dist_ts/integrations/hunterdouglas_powerview/hunterdouglas_powerview.classes.integration.js +1 -1
- package/dist_ts/integrations/hunterdouglas_powerview/hunterdouglas_powerview.discovery.d.ts +3 -3
- package/dist_ts/integrations/hunterdouglas_powerview/hunterdouglas_powerview.types.d.ts +1 -1
- package/dist_ts/integrations/hyperion/hyperion.classes.client.js +1 -1
- package/dist_ts/integrations/hyperion/hyperion.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/hyperion/hyperion.classes.integration.js +1 -1
- package/dist_ts/integrations/hyperion/hyperion.discovery.d.ts +3 -3
- package/dist_ts/integrations/hyperion/hyperion.types.d.ts +1 -1
- package/dist_ts/integrations/imeon_inverter/imeon_inverter.classes.client.js +1 -1
- package/dist_ts/integrations/immich/immich.classes.client.js +1 -1
- package/dist_ts/integrations/incomfort/incomfort.classes.integration.js +1 -1
- package/dist_ts/integrations/indevolt/indevolt.classes.integration.js +1 -1
- package/dist_ts/integrations/index.d.ts +4 -1
- package/dist_ts/integrations/index.js +5 -2
- package/dist_ts/integrations/influxdb/influxdb.classes.client.js +1 -1
- package/dist_ts/integrations/intellifire/intellifire.classes.client.js +1 -1
- package/dist_ts/integrations/intellifire/intellifire.mapper.js +1 -1
- package/dist_ts/integrations/iometer/iometer.classes.client.js +1 -1
- package/dist_ts/integrations/iometer/iometer.mapper.js +1 -1
- package/dist_ts/integrations/iotawatt/iotawatt.classes.client.js +1 -1
- package/dist_ts/integrations/iperf3/iperf3.classes.client.js +1 -1
- package/dist_ts/integrations/ipp/ipp.classes.client.js +1 -1
- package/dist_ts/integrations/ipp/ipp.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/ipp/ipp.classes.integration.js +1 -1
- package/dist_ts/integrations/ipp/ipp.discovery.d.ts +2 -2
- package/dist_ts/integrations/iron_os/iron_os.classes.client.js +1 -1
- package/dist_ts/integrations/iskra/iskra.classes.client.js +1 -1
- package/dist_ts/integrations/iskra/iskra.mapper.js +1 -1
- package/dist_ts/integrations/itunes/itunes.classes.client.js +1 -1
- package/dist_ts/integrations/jellyfin/jellyfin.classes.client.js +1 -1
- package/dist_ts/integrations/jellyfin/jellyfin.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/jellyfin/jellyfin.classes.integration.js +1 -1
- package/dist_ts/integrations/jellyfin/jellyfin.discovery.d.ts +3 -3
- package/dist_ts/integrations/jvc_projector/jvc_projector.classes.client.js +1 -1
- package/dist_ts/integrations/kaleidescape/kaleidescape.classes.client.js +1 -1
- package/dist_ts/integrations/kankun/kankun.classes.client.js +1 -1
- package/dist_ts/integrations/keenetic_ndms2/keenetic_ndms2.classes.client.js +1 -1
- package/dist_ts/integrations/kef/kef.classes.client.js +1 -1
- package/dist_ts/integrations/kiosker/kiosker.classes.client.js +1 -1
- package/dist_ts/integrations/kira/kira.classes.client.js +1 -1
- package/dist_ts/integrations/kmtronic/kmtronic.classes.client.js +1 -1
- package/dist_ts/integrations/knx/knx.classes.client.js +1 -1
- package/dist_ts/integrations/knx/knx.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/knx/knx.classes.integration.js +1 -1
- package/dist_ts/integrations/knx/knx.discovery.d.ts +3 -3
- package/dist_ts/integrations/knx/knx.mapper.d.ts +1 -1
- package/dist_ts/integrations/knx/knx.mapper.js +1 -1
- package/dist_ts/integrations/kodi/kodi.classes.client.d.ts +11 -45
- package/dist_ts/integrations/kodi/kodi.classes.client.js +84 -310
- package/dist_ts/integrations/kodi/kodi.classes.configflow.d.ts +9 -8
- package/dist_ts/integrations/kodi/kodi.classes.configflow.js +53 -48
- package/dist_ts/integrations/kodi/kodi.classes.integration.d.ts +12 -12
- package/dist_ts/integrations/kodi/kodi.classes.integration.js +114 -171
- package/dist_ts/integrations/kodi/kodi.discovery.d.ts +2 -2
- package/dist_ts/integrations/kodi/kodi.discovery.js +53 -29
- package/dist_ts/integrations/kodi/kodi.mapper.d.ts +7 -2
- package/dist_ts/integrations/kodi/kodi.mapper.js +48 -10
- package/dist_ts/integrations/kodi/kodi.types.d.ts +32 -28
- package/dist_ts/integrations/kodi/kodi.validation.d.ts +9 -0
- package/dist_ts/integrations/kodi/kodi.validation.js +62 -0
- package/dist_ts/integrations/konnected/konnected.classes.client.js +1 -1
- package/dist_ts/integrations/kostal_plenticore/kostal_plenticore.classes.client.js +1 -1
- package/dist_ts/integrations/kostal_plenticore/kostal_plenticore.mapper.js +1 -1
- package/dist_ts/integrations/kwb/kwb.classes.client.js +1 -1
- package/dist_ts/integrations/kwb/kwb.mapper.js +1 -1
- package/dist_ts/integrations/lametric/lametric.classes.client.js +1 -1
- package/dist_ts/integrations/landisgyr_heat_meter/landisgyr_heat_meter.mapper.js +1 -1
- package/dist_ts/integrations/lcn/lcn.classes.client.js +1 -1
- package/dist_ts/integrations/lektrico/lektrico.classes.client.js +1 -1
- package/dist_ts/integrations/lektrico/lektrico.types.d.ts +4 -4
- package/dist_ts/integrations/lg_netcast/lg_netcast.classes.client.js +1 -1
- package/dist_ts/integrations/lg_soundbar/lg_soundbar.classes.client.js +1 -1
- package/dist_ts/integrations/libre_hardware_monitor/libre_hardware_monitor.classes.client.js +1 -1
- package/dist_ts/integrations/lidarr/lidarr.classes.client.js +1 -1
- package/dist_ts/integrations/lifx/lifx.classes.client.d.ts +10 -4
- package/dist_ts/integrations/lifx/lifx.classes.client.js +94 -6
- package/dist_ts/integrations/lifx/lifx.classes.configflow.d.ts +3 -3
- package/dist_ts/integrations/lifx/lifx.classes.configflow.js +37 -6
- package/dist_ts/integrations/lifx/lifx.classes.integration.d.ts +19 -4
- package/dist_ts/integrations/lifx/lifx.classes.integration.js +152 -7
- package/dist_ts/integrations/lifx/lifx.discovery.d.ts +2 -1
- package/dist_ts/integrations/lifx/lifx.discovery.js +26 -4
- package/dist_ts/integrations/lifx/lifx.mapper.d.ts +7 -8
- package/dist_ts/integrations/lifx/lifx.mapper.js +42 -12
- package/dist_ts/integrations/lifx/lifx.types.d.ts +61 -9
- package/dist_ts/integrations/lifx/lifx.types.js +9 -116
- package/dist_ts/integrations/lifx/lifx.validation.d.ts +10 -0
- package/dist_ts/integrations/lifx/lifx.validation.js +83 -0
- package/dist_ts/integrations/linkplay/linkplay.classes.client.js +1 -1
- package/dist_ts/integrations/linkplay/linkplay.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/linkplay/linkplay.classes.integration.js +1 -1
- package/dist_ts/integrations/linkplay/linkplay.discovery.d.ts +3 -3
- package/dist_ts/integrations/linksys_smart/linksys_smart.classes.client.js +1 -1
- package/dist_ts/integrations/livisi/livisi.classes.client.js +1 -1
- package/dist_ts/integrations/local_calendar/local_calendar.classes.client.js +1 -1
- package/dist_ts/integrations/local_file/local_file.classes.client.js +1 -1
- package/dist_ts/integrations/local_ip/local_ip.classes.client.js +1 -1
- package/dist_ts/integrations/local_todo/local_todo.classes.client.js +1 -1
- package/dist_ts/integrations/lookin/lookin.classes.client.js +1 -1
- package/dist_ts/integrations/loqed/loqed.classes.client.js +1 -1
- package/dist_ts/integrations/loqed/loqed.mapper.d.ts +1 -1
- package/dist_ts/integrations/loqed/loqed.mapper.js +1 -1
- package/dist_ts/integrations/luci/luci.classes.client.js +1 -1
- package/dist_ts/integrations/luci/luci.mapper.js +1 -1
- package/dist_ts/integrations/lunatone/lunatone.classes.client.js +1 -1
- package/dist_ts/integrations/lunatone/lunatone.mapper.js +1 -1
- package/dist_ts/integrations/madvr/madvr.classes.client.js +1 -1
- package/dist_ts/integrations/madvr/madvr.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/madvr/madvr.classes.integration.js +1 -1
- package/dist_ts/integrations/madvr/madvr.discovery.d.ts +2 -2
- package/dist_ts/integrations/marytts/marytts.classes.client.js +1 -1
- package/dist_ts/integrations/marytts/marytts.classes.integration.js +1 -1
- package/dist_ts/integrations/matter/matter.classes.client.js +1 -1
- package/dist_ts/integrations/matter/matter.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/matter/matter.classes.integration.js +1 -1
- package/dist_ts/integrations/matter/matter.discovery.d.ts +2 -2
- package/dist_ts/integrations/matter/matter.mapper.js +1 -1
- package/dist_ts/integrations/maxcube/maxcube.classes.client.js +1 -1
- package/dist_ts/integrations/mcp/mcp.classes.client.js +1 -1
- package/dist_ts/integrations/mcp_server/mcp_server.classes.client.js +1 -1
- package/dist_ts/integrations/mealie/mealie.classes.client.js +1 -1
- package/dist_ts/integrations/mealie/mealie.mapper.js +1 -1
- package/dist_ts/integrations/medcom_ble/medcom_ble.classes.client.js +1 -1
- package/dist_ts/integrations/medcom_ble/medcom_ble.mapper.js +1 -1
- package/dist_ts/integrations/mediaroom/mediaroom.classes.client.js +1 -1
- package/dist_ts/integrations/mediaroom/mediaroom.mapper.js +1 -1
- package/dist_ts/integrations/mfi/mfi.mapper.js +1 -1
- package/dist_ts/integrations/mikrotik/mikrotik.classes.client.js +1 -1
- package/dist_ts/integrations/mikrotik/mikrotik.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/mikrotik/mikrotik.classes.integration.js +1 -1
- package/dist_ts/integrations/mikrotik/mikrotik.discovery.d.ts +1 -1
- package/dist_ts/integrations/mikrotik/mikrotik.mapper.js +1 -1
- package/dist_ts/integrations/mill/mill.classes.client.js +1 -1
- package/dist_ts/integrations/mill/mill.mapper.js +1 -1
- package/dist_ts/integrations/minecraft_server/minecraft_server.classes.client.js +1 -1
- package/dist_ts/integrations/mjpeg/mjpeg.classes.client.js +1 -1
- package/dist_ts/integrations/mobile_app/mobile_app.classes.client.js +1 -1
- package/dist_ts/integrations/mochad/mochad.classes.client.js +1 -1
- package/dist_ts/integrations/modbus/modbus.classes.client.d.ts +15 -61
- package/dist_ts/integrations/modbus/modbus.classes.client.js +117 -776
- package/dist_ts/integrations/modbus/modbus.classes.configflow.d.ts +9 -5
- package/dist_ts/integrations/modbus/modbus.classes.configflow.js +70 -38
- package/dist_ts/integrations/modbus/modbus.classes.integration.d.ts +7 -18
- package/dist_ts/integrations/modbus/modbus.classes.integration.js +133 -57
- package/dist_ts/integrations/modbus/modbus.discovery.d.ts +5 -8
- package/dist_ts/integrations/modbus/modbus.discovery.js +38 -93
- package/dist_ts/integrations/modbus/modbus.mapper.d.ts +8 -32
- package/dist_ts/integrations/modbus/modbus.mapper.js +71 -431
- package/dist_ts/integrations/modbus/modbus.types.d.ts +82 -332
- package/dist_ts/integrations/modbus/modbus.validation.d.ts +10 -0
- package/dist_ts/integrations/modbus/modbus.validation.js +128 -0
- package/dist_ts/integrations/modern_forms/modern_forms.classes.client.js +1 -1
- package/dist_ts/integrations/moehlenhoff_alpha2/moehlenhoff_alpha2.classes.client.js +1 -1
- package/dist_ts/integrations/monoprice/monoprice.classes.client.js +1 -1
- package/dist_ts/integrations/motioneye/motioneye.classes.client.js +1 -1
- package/dist_ts/integrations/motioneye/motioneye.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/motioneye/motioneye.classes.integration.js +1 -1
- package/dist_ts/integrations/motioneye/motioneye.discovery.d.ts +2 -2
- package/dist_ts/integrations/motioneye/motioneye.types.d.ts +1 -1
- package/dist_ts/integrations/motionmount/motionmount.classes.client.js +1 -1
- package/dist_ts/integrations/mpd/mpd.classes.client.js +1 -1
- package/dist_ts/integrations/mpd/mpd.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/mpd/mpd.classes.integration.js +1 -1
- package/dist_ts/integrations/mpd/mpd.discovery.d.ts +2 -2
- package/dist_ts/integrations/mqtt/mqtt.classes.client.d.ts +54 -9
- package/dist_ts/integrations/mqtt/mqtt.classes.client.js +443 -352
- package/dist_ts/integrations/mqtt/mqtt.classes.configflow.d.ts +0 -1
- package/dist_ts/integrations/mqtt/mqtt.classes.configflow.js +23 -18
- package/dist_ts/integrations/mqtt/mqtt.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/mqtt/mqtt.classes.integration.js +140 -37
- package/dist_ts/integrations/mqtt/mqtt.discovery.d.ts +2 -2
- package/dist_ts/integrations/mqtt/mqtt.mapper.d.ts +7 -1
- package/dist_ts/integrations/mqtt/mqtt.mapper.js +161 -48
- package/dist_ts/integrations/mqtt/mqtt.types.d.ts +17 -0
- package/dist_ts/integrations/mqtt_eventstream/mqtt_eventstream.classes.client.js +1 -1
- package/dist_ts/integrations/mqtt_json/mqtt_json.classes.client.js +1 -1
- package/dist_ts/integrations/mqtt_room/mqtt_room.classes.client.js +1 -1
- package/dist_ts/integrations/music_assistant/music_assistant.classes.client.js +1 -1
- package/dist_ts/integrations/music_assistant/music_assistant.mapper.js +1 -1
- package/dist_ts/integrations/mutesync/mutesync.classes.client.js +1 -1
- package/dist_ts/integrations/mutesync/mutesync.mapper.js +1 -1
- package/dist_ts/integrations/mycroft/mycroft.classes.client.js +1 -1
- package/dist_ts/integrations/mysensors/mysensors.classes.client.js +1 -1
- package/dist_ts/integrations/mystrom/mystrom.classes.client.js +1 -1
- package/dist_ts/integrations/nad/nad.classes.client.js +1 -1
- package/dist_ts/integrations/nam/nam.classes.client.js +1 -1
- package/dist_ts/integrations/nanoleaf/nanoleaf.classes.client.d.ts +12 -34
- package/dist_ts/integrations/nanoleaf/nanoleaf.classes.client.js +143 -231
- package/dist_ts/integrations/nanoleaf/nanoleaf.classes.configflow.d.ts +6 -1
- package/dist_ts/integrations/nanoleaf/nanoleaf.classes.configflow.js +105 -18
- package/dist_ts/integrations/nanoleaf/nanoleaf.classes.integration.d.ts +9 -9
- package/dist_ts/integrations/nanoleaf/nanoleaf.classes.integration.js +141 -155
- package/dist_ts/integrations/nanoleaf/nanoleaf.credentials.d.ts +9 -0
- package/dist_ts/integrations/nanoleaf/nanoleaf.credentials.js +35 -0
- package/dist_ts/integrations/nanoleaf/nanoleaf.discovery.d.ts +3 -3
- package/dist_ts/integrations/nanoleaf/nanoleaf.mapper.d.ts +6 -18
- package/dist_ts/integrations/nanoleaf/nanoleaf.mapper.js +45 -220
- package/dist_ts/integrations/nanoleaf/nanoleaf.types.d.ts +33 -147
- package/dist_ts/integrations/nanoleaf/nanoleaf.validation.d.ts +6 -0
- package/dist_ts/integrations/nanoleaf/nanoleaf.validation.js +82 -0
- package/dist_ts/integrations/nasweb/nasweb.classes.client.js +1 -1
- package/dist_ts/integrations/netdata/netdata.classes.client.js +1 -1
- package/dist_ts/integrations/nibe_heatpump/nibe_heatpump.classes.client.js +1 -1
- package/dist_ts/integrations/niko_home_control/niko_home_control.classes.client.js +1 -1
- package/dist_ts/integrations/nobo_hub/nobo_hub.classes.client.js +1 -1
- package/dist_ts/integrations/nrgkick/nrgkick.classes.client.js +1 -1
- package/dist_ts/integrations/nuki/nuki.classes.client.js +1 -1
- package/dist_ts/integrations/nut/nut.classes.client.js +1 -1
- package/dist_ts/integrations/nut/nut.classes.integration.js +1 -1
- package/dist_ts/integrations/nx584/nx584.classes.client.js +1 -1
- package/dist_ts/integrations/nx584/nx584.classes.integration.js +1 -1
- package/dist_ts/integrations/nzbget/nzbget.classes.client.js +1 -1
- package/dist_ts/integrations/nzbget/nzbget.mapper.js +1 -1
- package/dist_ts/integrations/obihai/obihai.classes.client.js +1 -1
- package/dist_ts/integrations/octoprint/octoprint.classes.client.js +1 -1
- package/dist_ts/integrations/octoprint/octoprint.mapper.js +1 -1
- package/dist_ts/integrations/oem/oem.classes.client.js +1 -1
- package/dist_ts/integrations/ollama/ollama.classes.client.js +1 -1
- package/dist_ts/integrations/ombi/ombi.classes.client.js +1 -1
- package/dist_ts/integrations/onewire/onewire.classes.client.js +1 -1
- package/dist_ts/integrations/onkyo/onkyo.classes.client.d.ts +15 -20
- package/dist_ts/integrations/onkyo/onkyo.classes.client.js +161 -404
- package/dist_ts/integrations/onkyo/onkyo.classes.configflow.d.ts +9 -4
- package/dist_ts/integrations/onkyo/onkyo.classes.configflow.js +51 -6
- package/dist_ts/integrations/onkyo/onkyo.classes.integration.d.ts +22 -6
- package/dist_ts/integrations/onkyo/onkyo.classes.integration.js +144 -11
- package/dist_ts/integrations/onkyo/onkyo.discovery.d.ts +6 -1
- package/dist_ts/integrations/onkyo/onkyo.discovery.js +40 -4
- package/dist_ts/integrations/onkyo/onkyo.mapper.d.ts +7 -8
- package/dist_ts/integrations/onkyo/onkyo.mapper.js +45 -12
- package/dist_ts/integrations/onkyo/onkyo.types.d.ts +58 -8
- package/dist_ts/integrations/onkyo/onkyo.types.js +13 -102
- package/dist_ts/integrations/onkyo/onkyo.validation.d.ts +16 -0
- package/dist_ts/integrations/onkyo/onkyo.validation.js +77 -0
- package/dist_ts/integrations/onvif/onvif.classes.client.js +1 -1
- package/dist_ts/integrations/onvif/onvif.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/onvif/onvif.classes.integration.js +1 -1
- package/dist_ts/integrations/onvif/onvif.discovery.d.ts +3 -3
- package/dist_ts/integrations/onvif/onvif.mapper.js +1 -1
- package/dist_ts/integrations/openevse/openevse.classes.client.js +1 -1
- package/dist_ts/integrations/openevse/openevse.mapper.js +1 -1
- package/dist_ts/integrations/opengarage/opengarage.classes.client.js +1 -1
- package/dist_ts/integrations/opengarage/opengarage.mapper.js +1 -1
- package/dist_ts/integrations/openhardwaremonitor/openhardwaremonitor.classes.client.js +1 -1
- package/dist_ts/integrations/openhome/openhome.classes.client.d.ts +2 -1
- package/dist_ts/integrations/openhome/openhome.classes.client.js +21 -19
- package/dist_ts/integrations/openrgb/openrgb.classes.client.js +1 -1
- package/dist_ts/integrations/openrgb/openrgb.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/openrgb/openrgb.classes.integration.js +1 -1
- package/dist_ts/integrations/openrgb/openrgb.discovery.d.ts +2 -2
- package/dist_ts/integrations/openrgb/openrgb.mapper.js +1 -1
- package/dist_ts/integrations/opentherm_gw/opentherm_gw.classes.client.d.ts +1 -1
- package/dist_ts/integrations/opentherm_gw/opentherm_gw.classes.client.js +1 -1
- package/dist_ts/integrations/opentherm_gw/opentherm_gw.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/opentherm_gw/opentherm_gw.classes.integration.js +1 -1
- package/dist_ts/integrations/opentherm_gw/opentherm_gw.discovery.d.ts +1 -1
- package/dist_ts/integrations/opnsense/opnsense.classes.client.js +1 -1
- package/dist_ts/integrations/opnsense/opnsense.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/opnsense/opnsense.classes.integration.js +1 -1
- package/dist_ts/integrations/opnsense/opnsense.discovery.d.ts +1 -1
- package/dist_ts/integrations/opnsense/opnsense.mapper.js +1 -1
- package/dist_ts/integrations/orvibo/orvibo.classes.client.js +1 -1
- package/dist_ts/integrations/osramlightify/osramlightify.classes.client.js +1 -1
- package/dist_ts/integrations/otbr/otbr.classes.client.js +1 -1
- package/dist_ts/integrations/overkiz/overkiz.classes.client.js +1 -1
- package/dist_ts/integrations/overseerr/overseerr.classes.client.js +1 -1
- package/dist_ts/integrations/owntracks/owntracks.classes.client.js +1 -1
- package/dist_ts/integrations/p1_monitor/p1_monitor.classes.client.js +1 -1
- package/dist_ts/integrations/palazzetti/palazzetti.classes.client.js +1 -1
- package/dist_ts/integrations/panasonic_bluray/panasonic_bluray.classes.client.js +1 -1
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.classes.client.d.ts +25 -25
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.classes.client.js +116 -360
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.classes.configflow.d.ts +11 -3
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.classes.configflow.js +76 -6
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.classes.integration.d.ts +26 -4
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.classes.integration.js +142 -9
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.discovery.d.ts +2 -1
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.discovery.js +31 -4
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.mapper.d.ts +9 -9
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.mapper.js +31 -149
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.types.d.ts +51 -11
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.types.js +22 -87
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.validation.d.ts +6 -0
- package/dist_ts/integrations/panasonic_viera/panasonic_viera.validation.js +56 -0
- package/dist_ts/integrations/paperless_ngx/paperless_ngx.classes.client.js +1 -1
- package/dist_ts/integrations/paperless_ngx/paperless_ngx.mapper.js +1 -1
- package/dist_ts/integrations/peblar/peblar.classes.client.js +1 -1
- package/dist_ts/integrations/peblar/peblar.mapper.js +1 -1
- package/dist_ts/integrations/pencom/pencom.classes.client.js +1 -1
- package/dist_ts/integrations/philips_js/philips_js.classes.client.js +1 -1
- package/dist_ts/integrations/pi_hole/pi_hole.classes.client.js +1 -1
- package/dist_ts/integrations/pi_hole/pi_hole.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/pi_hole/pi_hole.classes.integration.js +1 -1
- package/dist_ts/integrations/pi_hole/pi_hole.discovery.d.ts +2 -2
- package/dist_ts/integrations/pi_hole/pi_hole.mapper.js +1 -1
- package/dist_ts/integrations/picotts/picotts.classes.client.js +1 -1
- package/dist_ts/integrations/pilight/pilight.classes.client.js +1 -1
- package/dist_ts/integrations/pilight/pilight.classes.integration.js +1 -1
- package/dist_ts/integrations/ping/ping.classes.client.js +1 -1
- package/dist_ts/integrations/pioneer/pioneer.classes.client.d.ts +31 -16
- package/dist_ts/integrations/pioneer/pioneer.classes.client.js +167 -409
- package/dist_ts/integrations/pioneer/pioneer.classes.configflow.d.ts +10 -3
- package/dist_ts/integrations/pioneer/pioneer.classes.configflow.js +66 -6
- package/dist_ts/integrations/pioneer/pioneer.classes.integration.d.ts +13 -5
- package/dist_ts/integrations/pioneer/pioneer.classes.integration.js +239 -11
- package/dist_ts/integrations/pioneer/pioneer.discovery.d.ts +14 -1
- package/dist_ts/integrations/pioneer/pioneer.discovery.js +51 -4
- package/dist_ts/integrations/pioneer/pioneer.mapper.d.ts +14 -8
- package/dist_ts/integrations/pioneer/pioneer.mapper.js +54 -12
- package/dist_ts/integrations/pioneer/pioneer.types.d.ts +79 -12
- package/dist_ts/integrations/pioneer/pioneer.types.js +12 -76
- package/dist_ts/integrations/pioneer/pioneer.validation.d.ts +10 -0
- package/dist_ts/integrations/pioneer/pioneer.validation.js +85 -0
- package/dist_ts/integrations/pjlink/pjlink.classes.client.js +1 -1
- package/dist_ts/integrations/plex/plex.classes.client.d.ts +1 -1
- package/dist_ts/integrations/plex/plex.classes.client.js +1 -1
- package/dist_ts/integrations/plex/plex.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/plex/plex.classes.integration.js +1 -1
- package/dist_ts/integrations/plex/plex.discovery.d.ts +5 -5
- package/dist_ts/integrations/plugwise/plugwise.classes.client.js +1 -1
- package/dist_ts/integrations/prusalink/prusalink.classes.client.js +1 -1
- package/dist_ts/integrations/prusalink/prusalink.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/prusalink/prusalink.classes.integration.js +1 -1
- package/dist_ts/integrations/prusalink/prusalink.discovery.d.ts +2 -2
- package/dist_ts/integrations/rainbird/rainbird.classes.client.js +1 -1
- package/dist_ts/integrations/rainbird/rainbird.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/rainbird/rainbird.classes.integration.js +1 -1
- package/dist_ts/integrations/rainbird/rainbird.discovery.d.ts +1 -1
- package/dist_ts/integrations/rflink/rflink.classes.client.js +1 -1
- package/dist_ts/integrations/rflink/rflink.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/rflink/rflink.classes.integration.js +1 -1
- package/dist_ts/integrations/rflink/rflink.discovery.d.ts +1 -1
- package/dist_ts/integrations/roku/roku.classes.client.d.ts +27 -14
- package/dist_ts/integrations/roku/roku.classes.client.js +213 -132
- package/dist_ts/integrations/roku/roku.classes.configflow.js +23 -14
- package/dist_ts/integrations/roku/roku.classes.integration.d.ts +4 -1
- package/dist_ts/integrations/roku/roku.classes.integration.js +74 -91
- package/dist_ts/integrations/roku/roku.discovery.d.ts +8 -8
- package/dist_ts/integrations/roku/roku.discovery.js +82 -65
- package/dist_ts/integrations/roku/roku.mapper.d.ts +0 -3
- package/dist_ts/integrations/roku/roku.mapper.js +18 -50
- package/dist_ts/integrations/roku/roku.types.d.ts +21 -12
- package/dist_ts/integrations/roku/roku.validation.d.ts +9 -0
- package/dist_ts/integrations/roku/roku.validation.js +74 -0
- package/dist_ts/integrations/samsungtv/samsungtv.classes.client.d.ts +9 -38
- package/dist_ts/integrations/samsungtv/samsungtv.classes.client.js +113 -417
- package/dist_ts/integrations/samsungtv/samsungtv.classes.configflow.js +31 -29
- package/dist_ts/integrations/samsungtv/samsungtv.classes.integration.d.ts +8 -7
- package/dist_ts/integrations/samsungtv/samsungtv.classes.integration.js +122 -117
- package/dist_ts/integrations/samsungtv/samsungtv.discovery.d.ts +11 -11
- package/dist_ts/integrations/samsungtv/samsungtv.discovery.js +120 -143
- package/dist_ts/integrations/samsungtv/samsungtv.mapper.d.ts +3 -11
- package/dist_ts/integrations/samsungtv/samsungtv.mapper.js +18 -117
- package/dist_ts/integrations/samsungtv/samsungtv.types.d.ts +18 -85
- package/dist_ts/integrations/samsungtv/samsungtv.validation.d.ts +7 -0
- package/dist_ts/integrations/samsungtv/samsungtv.validation.js +83 -0
- package/dist_ts/integrations/shelly/shelly.classes.client.d.ts +29 -14
- package/dist_ts/integrations/shelly/shelly.classes.client.js +310 -126
- package/dist_ts/integrations/shelly/shelly.classes.configflow.js +29 -11
- package/dist_ts/integrations/shelly/shelly.classes.integration.d.ts +4 -1
- package/dist_ts/integrations/shelly/shelly.classes.integration.js +120 -27
- package/dist_ts/integrations/shelly/shelly.classes.subscription.d.ts +47 -0
- package/dist_ts/integrations/shelly/shelly.classes.subscription.js +206 -0
- package/dist_ts/integrations/shelly/shelly.discovery.d.ts +2 -2
- package/dist_ts/integrations/shelly/shelly.discovery.js +6 -3
- package/dist_ts/integrations/shelly/shelly.rpc.d.ts +21 -0
- package/dist_ts/integrations/shelly/shelly.rpc.js +210 -0
- package/dist_ts/integrations/shelly/shelly.types.d.ts +26 -4
- package/dist_ts/integrations/snapcast/snapcast.classes.client.js +1 -1
- package/dist_ts/integrations/snapcast/snapcast.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/snapcast/snapcast.classes.integration.js +1 -1
- package/dist_ts/integrations/snapcast/snapcast.discovery.d.ts +2 -2
- package/dist_ts/integrations/sonos/index.d.ts +3 -0
- package/dist_ts/integrations/sonos/index.js +4 -1
- package/dist_ts/integrations/sonos/sonos.classes.client.d.ts +30 -29
- package/dist_ts/integrations/sonos/sonos.classes.client.js +162 -208
- package/dist_ts/integrations/sonos/sonos.classes.configflow.js +27 -9
- package/dist_ts/integrations/sonos/sonos.classes.integration.d.ts +6 -5
- package/dist_ts/integrations/sonos/sonos.classes.integration.js +280 -61
- package/dist_ts/integrations/sonos/sonos.classes.ssdpprobe.d.ts +17 -0
- package/dist_ts/integrations/sonos/sonos.classes.ssdpprobe.js +88 -0
- package/dist_ts/integrations/sonos/sonos.config.d.ts +12 -0
- package/dist_ts/integrations/sonos/sonos.config.js +52 -0
- package/dist_ts/integrations/sonos/sonos.discovery.d.ts +1 -25
- package/dist_ts/integrations/sonos/sonos.discovery.js +6 -114
- package/dist_ts/integrations/sonos/sonos.mapper.d.ts +2 -1
- package/dist_ts/integrations/sonos/sonos.mapper.js +33 -13
- package/dist_ts/integrations/sonos/sonos.matchers.d.ts +25 -0
- package/dist_ts/integrations/sonos/sonos.matchers.js +82 -0
- package/dist_ts/integrations/sonos/sonos.topology.d.ts +2 -0
- package/dist_ts/integrations/sonos/sonos.topology.js +59 -0
- package/dist_ts/integrations/sonos/sonos.types.d.ts +18 -8
- package/dist_ts/integrations/sonos/sonos.xml.d.ts +3 -0
- package/dist_ts/integrations/sonos/sonos.xml.js +21 -0
- package/dist_ts/integrations/soundtouch/soundtouch.classes.client.d.ts +13 -36
- package/dist_ts/integrations/soundtouch/soundtouch.classes.client.js +179 -502
- package/dist_ts/integrations/soundtouch/soundtouch.classes.configflow.d.ts +6 -1
- package/dist_ts/integrations/soundtouch/soundtouch.classes.configflow.js +50 -40
- package/dist_ts/integrations/soundtouch/soundtouch.classes.integration.d.ts +15 -16
- package/dist_ts/integrations/soundtouch/soundtouch.classes.integration.js +108 -128
- package/dist_ts/integrations/soundtouch/soundtouch.discovery.d.ts +2 -20
- package/dist_ts/integrations/soundtouch/soundtouch.discovery.js +23 -113
- package/dist_ts/integrations/soundtouch/soundtouch.mapper.d.ts +3 -12
- package/dist_ts/integrations/soundtouch/soundtouch.mapper.js +35 -189
- package/dist_ts/integrations/soundtouch/soundtouch.types.d.ts +57 -142
- package/dist_ts/integrations/soundtouch/soundtouch.types.js +18 -3
- package/dist_ts/integrations/soundtouch/soundtouch.validation.d.ts +22 -0
- package/dist_ts/integrations/soundtouch/soundtouch.validation.js +65 -0
- package/dist_ts/integrations/squeezebox/squeezebox.classes.client.js +1 -1
- package/dist_ts/integrations/squeezebox/squeezebox.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/squeezebox/squeezebox.classes.integration.js +1 -1
- package/dist_ts/integrations/squeezebox/squeezebox.discovery.d.ts +3 -3
- package/dist_ts/integrations/synology_dsm/synology_dsm.classes.client.js +1 -1
- package/dist_ts/integrations/synology_dsm/synology_dsm.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/synology_dsm/synology_dsm.classes.integration.js +1 -1
- package/dist_ts/integrations/synology_dsm/synology_dsm.discovery.d.ts +4 -4
- package/dist_ts/integrations/synology_dsm/synology_dsm.mapper.js +1 -1
- package/dist_ts/integrations/synology_srm/synology_srm.classes.client.js +1 -1
- package/dist_ts/integrations/synology_srm/synology_srm.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/synology_srm/synology_srm.classes.integration.js +1 -1
- package/dist_ts/integrations/synology_srm/synology_srm.discovery.d.ts +2 -2
- package/dist_ts/integrations/synology_srm/synology_srm.mapper.js +1 -1
- package/dist_ts/integrations/tasmota/index.d.ts +4 -0
- package/dist_ts/integrations/tasmota/index.js +5 -1
- package/dist_ts/integrations/tasmota/tasmota.classes.integration.d.ts +21 -3
- package/dist_ts/integrations/tasmota/tasmota.classes.integration.js +24 -25
- package/dist_ts/integrations/tasmota/tasmota.classes.runtime.d.ts +36 -0
- package/dist_ts/integrations/tasmota/tasmota.classes.runtime.js +292 -0
- package/dist_ts/integrations/tasmota/tasmota.config.d.ts +2 -0
- package/dist_ts/integrations/tasmota/tasmota.config.js +78 -0
- package/dist_ts/integrations/tasmota/tasmota.discovery.d.ts +7 -0
- package/dist_ts/integrations/tasmota/tasmota.discovery.js +85 -0
- package/dist_ts/integrations/tasmota/tasmota.mapper.d.ts +12 -0
- package/dist_ts/integrations/tasmota/tasmota.mapper.js +91 -0
- package/dist_ts/integrations/tasmota/tasmota.types.d.ts +51 -1
- package/dist_ts/integrations/tplink/index.d.ts +3 -0
- package/dist_ts/integrations/tplink/index.js +4 -1
- package/dist_ts/integrations/tplink/tplink.classes.client.d.ts +8 -14
- package/dist_ts/integrations/tplink/tplink.classes.client.js +64 -64
- package/dist_ts/integrations/tplink/tplink.classes.configflow.d.ts +3 -8
- package/dist_ts/integrations/tplink/tplink.classes.configflow.js +53 -89
- package/dist_ts/integrations/tplink/tplink.classes.integration.d.ts +8 -13
- package/dist_ts/integrations/tplink/tplink.classes.integration.js +136 -37
- package/dist_ts/integrations/tplink/tplink.discovery.d.ts +11 -14
- package/dist_ts/integrations/tplink/tplink.discovery.js +125 -210
- package/dist_ts/integrations/tplink/tplink.mapper.js +1 -1
- package/dist_ts/integrations/tplink/tplink.native.mapper.d.ts +11 -0
- package/dist_ts/integrations/tplink/tplink.native.mapper.js +61 -0
- package/dist_ts/integrations/tplink/tplink.native.types.d.ts +32 -0
- package/dist_ts/integrations/tplink/tplink.native.types.js +2 -0
- package/dist_ts/integrations/tplink/tplink.validation.d.ts +4 -0
- package/dist_ts/integrations/tplink/tplink.validation.js +48 -0
- package/dist_ts/integrations/tradfri/tradfri.classes.client.js +1 -1
- package/dist_ts/integrations/tradfri/tradfri.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/tradfri/tradfri.classes.integration.js +1 -1
- package/dist_ts/integrations/tradfri/tradfri.discovery.d.ts +2 -3
- package/dist_ts/integrations/tradfri/tradfri.discovery.js +52 -26
- package/dist_ts/integrations/tradfri/tradfri.mapper.js +1 -1
- package/dist_ts/integrations/tuya/tuya.classes.integration.d.ts +21 -3
- package/dist_ts/integrations/tuya/tuya.classes.integration.js +139 -28
- package/dist_ts/integrations/tuya/tuya.classes.runtime.d.ts +15 -0
- package/dist_ts/integrations/tuya/tuya.classes.runtime.js +189 -0
- package/dist_ts/integrations/tuya/tuya.mapper.d.ts +13 -0
- package/dist_ts/integrations/tuya/tuya.mapper.js +30 -0
- package/dist_ts/integrations/tuya/tuya.types.d.ts +40 -1
- package/dist_ts/integrations/tuya/tuya.validation.d.ts +10 -0
- package/dist_ts/integrations/tuya/tuya.validation.js +122 -0
- package/dist_ts/integrations/unifi/unifi.classes.client.js +1 -1
- package/dist_ts/integrations/unifi/unifi.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/unifi/unifi.classes.integration.js +1 -1
- package/dist_ts/integrations/unifi/unifi.discovery.d.ts +4 -4
- package/dist_ts/integrations/unifi/unifi.mapper.js +6 -6
- package/dist_ts/integrations/velbus/velbus.classes.client.js +1 -1
- package/dist_ts/integrations/velbus/velbus.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/velbus/velbus.classes.integration.js +1 -1
- package/dist_ts/integrations/velbus/velbus.discovery.d.ts +2 -2
- package/dist_ts/integrations/volumio/volumio.classes.client.js +1 -1
- package/dist_ts/integrations/volumio/volumio.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/volumio/volumio.classes.integration.js +1 -1
- package/dist_ts/integrations/volumio/volumio.discovery.d.ts +2 -2
- package/dist_ts/integrations/wake_on_lan/wake_on_lan.classes.client.js +1 -1
- package/dist_ts/integrations/wake_on_lan/wake_on_lan.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/wake_on_lan/wake_on_lan.classes.integration.js +1 -1
- package/dist_ts/integrations/wake_on_lan/wake_on_lan.discovery.d.ts +2 -2
- package/dist_ts/integrations/wake_on_lan/wake_on_lan.mapper.js +1 -1
- package/dist_ts/integrations/wake_on_lan/wake_on_lan.packet.js +1 -1
- package/dist_ts/integrations/webostv/webostv.classes.client.d.ts +10 -4
- package/dist_ts/integrations/webostv/webostv.classes.client.js +370 -6
- package/dist_ts/integrations/webostv/webostv.classes.configflow.d.ts +3 -3
- package/dist_ts/integrations/webostv/webostv.classes.configflow.js +23 -6
- package/dist_ts/integrations/webostv/webostv.classes.integration.d.ts +20 -5
- package/dist_ts/integrations/webostv/webostv.classes.integration.js +138 -7
- package/dist_ts/integrations/webostv/webostv.discovery.d.ts +2 -1
- package/dist_ts/integrations/webostv/webostv.discovery.js +26 -4
- package/dist_ts/integrations/webostv/webostv.mapper.d.ts +6 -8
- package/dist_ts/integrations/webostv/webostv.mapper.js +24 -13
- package/dist_ts/integrations/webostv/webostv.types.d.ts +61 -5
- package/dist_ts/integrations/webostv/webostv.types.js +5 -96
- package/dist_ts/integrations/webostv/webostv.validation.d.ts +6 -0
- package/dist_ts/integrations/webostv/webostv.validation.js +54 -0
- package/dist_ts/integrations/wiz/index.d.ts +1 -0
- package/dist_ts/integrations/wiz/index.js +2 -1
- package/dist_ts/integrations/wiz/wiz.classes.client.d.ts +14 -28
- package/dist_ts/integrations/wiz/wiz.classes.client.js +93 -229
- package/dist_ts/integrations/wiz/wiz.classes.configflow.d.ts +6 -4
- package/dist_ts/integrations/wiz/wiz.classes.configflow.js +38 -67
- package/dist_ts/integrations/wiz/wiz.classes.integration.d.ts +11 -22
- package/dist_ts/integrations/wiz/wiz.classes.integration.js +204 -44
- package/dist_ts/integrations/wiz/wiz.discovery.d.ts +10 -31
- package/dist_ts/integrations/wiz/wiz.discovery.js +48 -249
- package/dist_ts/integrations/wiz/wiz.mapper.d.ts +7 -51
- package/dist_ts/integrations/wiz/wiz.mapper.js +82 -668
- package/dist_ts/integrations/wiz/wiz.types.d.ts +34 -208
- package/dist_ts/integrations/wiz/wiz.validation.d.ts +8 -0
- package/dist_ts/integrations/wiz/wiz.validation.js +72 -0
- package/dist_ts/integrations/wled/index.d.ts +1 -0
- package/dist_ts/integrations/wled/index.js +2 -1
- package/dist_ts/integrations/wled/wled.classes.client.d.ts +27 -4
- package/dist_ts/integrations/wled/wled.classes.client.js +231 -6
- package/dist_ts/integrations/wled/wled.classes.configflow.d.ts +3 -3
- package/dist_ts/integrations/wled/wled.classes.configflow.js +33 -6
- package/dist_ts/integrations/wled/wled.classes.integration.d.ts +24 -4
- package/dist_ts/integrations/wled/wled.classes.integration.js +171 -7
- package/dist_ts/integrations/wled/wled.classes.subscription.d.ts +37 -0
- package/dist_ts/integrations/wled/wled.classes.subscription.js +116 -0
- package/dist_ts/integrations/wled/wled.commands.d.ts +4 -0
- package/dist_ts/integrations/wled/wled.commands.js +65 -0
- package/dist_ts/integrations/wled/wled.discovery.d.ts +17 -1
- package/dist_ts/integrations/wled/wled.discovery.js +68 -4
- package/dist_ts/integrations/wled/wled.errors.d.ts +5 -0
- package/dist_ts/integrations/wled/wled.errors.js +9 -0
- package/dist_ts/integrations/wled/wled.mapper.d.ts +8 -8
- package/dist_ts/integrations/wled/wled.mapper.js +40 -16
- package/dist_ts/integrations/wled/wled.types.d.ts +75 -6
- package/dist_ts/integrations/wled/wled.types.js +12 -82
- package/dist_ts/integrations/wled/wled.validation.d.ts +7 -0
- package/dist_ts/integrations/wled/wled.validation.js +85 -0
- package/dist_ts/integrations/wolf_smartset/wolf_smartset.classes.client.js +1 -1
- package/dist_ts/integrations/wolf_smartset/wolf_smartset.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/wolf_smartset/wolf_smartset.discovery.d.ts +1 -1
- package/dist_ts/integrations/xiaomi_miio/xiaomi_miio.classes.client.js +1 -1
- package/dist_ts/integrations/xiaomi_miio/xiaomi_miio.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/xiaomi_miio/xiaomi_miio.classes.integration.js +1 -1
- package/dist_ts/integrations/xiaomi_miio/xiaomi_miio.discovery.d.ts +3 -3
- package/dist_ts/integrations/xiaomi_miio/xiaomi_miio.mapper.js +1 -1
- package/dist_ts/integrations/yamaha/index.d.ts +1 -0
- package/dist_ts/integrations/yamaha/index.js +2 -1
- package/dist_ts/integrations/yamaha/yamaha.classes.client.d.ts +30 -4
- package/dist_ts/integrations/yamaha/yamaha.classes.client.js +162 -6
- package/dist_ts/integrations/yamaha/yamaha.classes.configflow.d.ts +10 -3
- package/dist_ts/integrations/yamaha/yamaha.classes.configflow.js +106 -6
- package/dist_ts/integrations/yamaha/yamaha.classes.integration.d.ts +22 -4
- package/dist_ts/integrations/yamaha/yamaha.classes.integration.js +243 -8
- package/dist_ts/integrations/yamaha/yamaha.discovery.d.ts +13 -1
- package/dist_ts/integrations/yamaha/yamaha.discovery.js +57 -4
- package/dist_ts/integrations/yamaha/yamaha.mapper.d.ts +16 -8
- package/dist_ts/integrations/yamaha/yamaha.mapper.js +58 -12
- package/dist_ts/integrations/yamaha/yamaha.types.d.ts +73 -6
- package/dist_ts/integrations/yamaha/yamaha.types.js +8 -94
- package/dist_ts/integrations/yamaha/yamaha.validation.d.ts +12 -0
- package/dist_ts/integrations/yamaha/yamaha.validation.js +89 -0
- package/dist_ts/integrations/yamaha_musiccast/yamaha_musiccast.classes.client.js +1 -1
- package/dist_ts/integrations/yamaha_musiccast/yamaha_musiccast.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/yamaha_musiccast/yamaha_musiccast.classes.integration.js +1 -1
- package/dist_ts/integrations/yamaha_musiccast/yamaha_musiccast.discovery.d.ts +3 -3
- package/dist_ts/integrations/yeelight/yeelight.classes.client.d.ts +34 -26
- package/dist_ts/integrations/yeelight/yeelight.classes.client.js +225 -275
- package/dist_ts/integrations/yeelight/yeelight.classes.configflow.d.ts +0 -2
- package/dist_ts/integrations/yeelight/yeelight.classes.configflow.js +29 -30
- package/dist_ts/integrations/yeelight/yeelight.classes.integration.d.ts +11 -5
- package/dist_ts/integrations/yeelight/yeelight.classes.integration.js +140 -80
- package/dist_ts/integrations/yeelight/yeelight.discovery.d.ts +11 -13
- package/dist_ts/integrations/yeelight/yeelight.discovery.js +90 -128
- package/dist_ts/integrations/yeelight/yeelight.mapper.d.ts +2 -10
- package/dist_ts/integrations/yeelight/yeelight.mapper.js +57 -178
- package/dist_ts/integrations/yeelight/yeelight.types.d.ts +37 -139
- package/dist_ts/integrations/yeelight/yeelight.validation.d.ts +10 -0
- package/dist_ts/integrations/yeelight/yeelight.validation.js +111 -0
- package/dist_ts/integrations/zha/zha.classes.client.js +1 -1
- package/dist_ts/integrations/zha/zha.classes.integration.d.ts +1 -1
- package/dist_ts/integrations/zha/zha.classes.integration.js +1 -1
- package/dist_ts/integrations/zha/zha.discovery.d.ts +3 -12
- package/dist_ts/integrations/zha/zha.discovery.js +102 -222
- package/dist_ts/integrations/zha/zha.discoveryvalidation.d.ts +10 -0
- package/dist_ts/integrations/zha/zha.discoveryvalidation.js +71 -0
- package/dist_ts/integrations/zha/zha.mapper.js +1 -1
- package/dist_ts/integrations/zigbee2mqtt/index.d.ts +5 -0
- package/dist_ts/integrations/zigbee2mqtt/index.js +6 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.configflow.d.ts +5 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.configflow.js +27 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.integration.d.ts +19 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.integration.js +19 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.runtime.d.ts +55 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.runtime.js +464 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.mapper.d.ts +15 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.mapper.js +186 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.types.d.ts +57 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.types.js +2 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.validation.d.ts +5 -0
- package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.validation.js +66 -0
- package/dist_ts/integrations/zwave_js/zwave_js.classes.client.d.ts +19 -21
- package/dist_ts/integrations/zwave_js/zwave_js.classes.client.js +303 -134
- package/dist_ts/integrations/zwave_js/zwave_js.classes.configflow.d.ts +0 -3
- package/dist_ts/integrations/zwave_js/zwave_js.classes.configflow.js +31 -26
- package/dist_ts/integrations/zwave_js/zwave_js.classes.integration.d.ts +2 -1
- package/dist_ts/integrations/zwave_js/zwave_js.classes.integration.js +71 -76
- package/dist_ts/integrations/zwave_js/zwave_js.discovery.d.ts +3 -3
- package/dist_ts/integrations/zwave_js/zwave_js.discovery.js +120 -16
- package/dist_ts/integrations/zwave_js/zwave_js.mapper.d.ts +13 -14
- package/dist_ts/integrations/zwave_js/zwave_js.mapper.js +140 -257
- package/dist_ts/integrations/zwave_js/zwave_js.types.d.ts +30 -19
- package/dist_ts/integrations/zwave_js/zwave_js.validation.d.ts +15 -0
- package/dist_ts/integrations/zwave_js/zwave_js.validation.js +191 -0
- package/dist_ts/plugins.d.ts +10 -2
- package/dist_ts/plugins.js +11 -3
- package/dist_ts_migration/001.import-json-config.d.ts +10 -0
- package/dist_ts_migration/001.import-json-config.js +147 -0
- package/dist_ts_migration/index.d.ts +1 -0
- package/dist_ts_migration/index.js +2 -0
- package/package.json +20 -11
- package/readme.md +560 -9
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/core/classes.configrecord.ts +23 -0
- package/ts/core/classes.configstore.ts +381 -25
- package/ts/core/classes.discoveryengine.ts +11 -1
- package/ts/core/classes.nativehomeadmission.ts +96 -0
- package/ts/core/classes.nativeintegrationowner.ts +297 -0
- package/ts/core/index.ts +2 -0
- package/ts/core/types.ts +31 -4
- package/ts/index.ts +6 -0
- package/ts/integrations/braviatv/braviatv.classes.client.ts +245 -709
- package/ts/integrations/braviatv/braviatv.classes.configflow.ts +47 -76
- package/ts/integrations/braviatv/braviatv.classes.integration.ts +167 -147
- package/ts/integrations/braviatv/braviatv.discovery.ts +11 -10
- package/ts/integrations/braviatv/braviatv.mapper.ts +39 -142
- package/ts/integrations/braviatv/braviatv.types.ts +53 -173
- package/ts/integrations/braviatv/braviatv.validation.ts +68 -0
- package/ts/integrations/broadlink/broadlink.actions.ts +31 -0
- package/ts/integrations/broadlink/broadlink.classes.client.ts +170 -144
- package/ts/integrations/broadlink/broadlink.classes.configflow.ts +59 -89
- package/ts/integrations/broadlink/broadlink.classes.integration.ts +110 -64
- package/ts/integrations/broadlink/broadlink.mapper.ts +5 -4
- package/ts/integrations/broadlink/broadlink.selected.mapper.ts +46 -0
- package/ts/integrations/broadlink/broadlink.types.ts +48 -8
- package/ts/integrations/broadlink/broadlink.validation.ts +66 -0
- package/ts/integrations/daikin/daikin.classes.client.ts +52 -661
- package/ts/integrations/daikin/daikin.classes.configflow.ts +72 -152
- package/ts/integrations/daikin/daikin.classes.integration.ts +166 -71
- package/ts/integrations/daikin/daikin.discovery.ts +94 -346
- package/ts/integrations/daikin/daikin.mapper.ts +83 -166
- package/ts/integrations/daikin/daikin.types.ts +27 -48
- package/ts/integrations/daikin/daikin.validation.ts +51 -0
- package/ts/integrations/daikin/readme.md +83 -0
- package/ts/integrations/deconz/deconz.classes.client.ts +243 -190
- package/ts/integrations/deconz/deconz.classes.configflow.ts +34 -25
- package/ts/integrations/deconz/deconz.classes.integration.ts +105 -22
- package/ts/integrations/deconz/deconz.mapper.ts +24 -18
- package/ts/integrations/deconz/deconz.types.ts +38 -3
- package/ts/integrations/deconz/deconz.validation.ts +261 -0
- package/ts/integrations/deconz/readme.md +44 -0
- package/ts/integrations/denonavr/denonavr.classes.client.ts +132 -421
- package/ts/integrations/denonavr/denonavr.classes.configflow.ts +44 -37
- package/ts/integrations/denonavr/denonavr.classes.integration.ts +171 -117
- package/ts/integrations/denonavr/denonavr.discovery.ts +67 -220
- package/ts/integrations/denonavr/denonavr.mapper.ts +36 -182
- package/ts/integrations/denonavr/denonavr.types.ts +48 -111
- package/ts/integrations/denonavr/denonavr.validation.ts +87 -0
- package/ts/integrations/esphome/esphome.classes.client.ts +254 -74
- package/ts/integrations/esphome/esphome.classes.configflow.ts +1 -3
- package/ts/integrations/esphome/esphome.classes.integration.ts +61 -66
- package/ts/integrations/esphome/esphome.discovery.ts +1 -1
- package/ts/integrations/esphome/esphome.mapper.ts +71 -37
- package/ts/integrations/esphome/esphome.types.ts +2 -0
- package/ts/integrations/esphome/readme.md +66 -0
- package/ts/integrations/generated/index.ts +4 -6
- package/ts/integrations/homeassistant/homeassistant.classes.client.ts +166 -63
- package/ts/integrations/homeassistant/homeassistant.classes.runtime.ts +41 -3
- package/ts/integrations/homeassistant/homeassistant.mapper.ts +32 -36
- package/ts/integrations/homeassistant/homeassistant.types.ts +11 -0
- package/ts/integrations/homeassistant/homeassistant.validation.ts +139 -0
- package/ts/integrations/homeassistant/readme.md +40 -0
- package/ts/integrations/hue/hue.classes.client.ts +251 -21
- package/ts/integrations/hue/hue.classes.configflow.ts +26 -13
- package/ts/integrations/hue/hue.classes.integration.ts +76 -30
- package/ts/integrations/hue/hue.discovery.ts +61 -26
- package/ts/integrations/hue/hue.mapper.ts +28 -60
- package/ts/integrations/hue/hue.types.ts +12 -18
- package/ts/integrations/hue/hue.validation.ts +154 -0
- package/ts/integrations/hue/readme.md +71 -0
- package/ts/integrations/index.ts +5 -1
- package/ts/integrations/kodi/kodi.classes.client.ts +72 -352
- package/ts/integrations/kodi/kodi.classes.configflow.ts +52 -55
- package/ts/integrations/kodi/kodi.classes.integration.ts +97 -178
- package/ts/integrations/kodi/kodi.discovery.ts +49 -28
- package/ts/integrations/kodi/kodi.mapper.ts +52 -10
- package/ts/integrations/kodi/kodi.types.ts +33 -58
- package/ts/integrations/kodi/kodi.validation.ts +60 -0
- package/ts/integrations/lifx/lifx.classes.client.ts +95 -6
- package/ts/integrations/lifx/lifx.classes.configflow.ts +32 -5
- package/ts/integrations/lifx/lifx.classes.integration.ts +142 -7
- package/ts/integrations/lifx/lifx.discovery.ts +26 -3
- package/ts/integrations/lifx/lifx.mapper.ts +45 -17
- package/ts/integrations/lifx/lifx.types.ts +51 -125
- package/ts/integrations/lifx/lifx.validation.ts +86 -0
- package/ts/integrations/lifx/readme.md +55 -0
- package/ts/integrations/modbus/modbus.classes.client.ts +100 -842
- package/ts/integrations/modbus/modbus.classes.configflow.ts +70 -41
- package/ts/integrations/modbus/modbus.classes.integration.ts +115 -60
- package/ts/integrations/modbus/modbus.discovery.ts +38 -106
- package/ts/integrations/modbus/modbus.mapper.ts +64 -467
- package/ts/integrations/modbus/modbus.types.ts +64 -381
- package/ts/integrations/modbus/modbus.validation.ts +119 -0
- package/ts/integrations/mqtt/mqtt.classes.client.ts +394 -366
- package/ts/integrations/mqtt/mqtt.classes.configflow.ts +22 -18
- package/ts/integrations/mqtt/mqtt.classes.integration.ts +119 -44
- package/ts/integrations/mqtt/mqtt.mapper.ts +139 -47
- package/ts/integrations/mqtt/mqtt.types.ts +19 -0
- package/ts/integrations/mqtt/readme.md +28 -0
- package/ts/integrations/nanoleaf/nanoleaf.classes.client.ts +115 -249
- package/ts/integrations/nanoleaf/nanoleaf.classes.configflow.ts +90 -19
- package/ts/integrations/nanoleaf/nanoleaf.classes.integration.ts +130 -181
- package/ts/integrations/nanoleaf/nanoleaf.credentials.ts +39 -0
- package/ts/integrations/nanoleaf/nanoleaf.mapper.ts +47 -260
- package/ts/integrations/nanoleaf/nanoleaf.types.ts +29 -147
- package/ts/integrations/nanoleaf/nanoleaf.validation.ts +77 -0
- package/ts/integrations/onkyo/onkyo.classes.client.ts +148 -457
- package/ts/integrations/onkyo/onkyo.classes.configflow.ts +52 -6
- package/ts/integrations/onkyo/onkyo.classes.integration.ts +121 -12
- package/ts/integrations/onkyo/onkyo.discovery.ts +41 -3
- package/ts/integrations/onkyo/onkyo.mapper.ts +46 -19
- package/ts/integrations/onkyo/onkyo.types.ts +55 -110
- package/ts/integrations/onkyo/onkyo.validation.ts +85 -0
- package/ts/integrations/onkyo/readme.md +126 -0
- package/ts/integrations/openhome/openhome.classes.client.ts +22 -18
- package/ts/integrations/panasonic_viera/panasonic_viera.classes.client.ts +101 -398
- package/ts/integrations/panasonic_viera/panasonic_viera.classes.configflow.ts +69 -5
- package/ts/integrations/panasonic_viera/panasonic_viera.classes.integration.ts +141 -9
- package/ts/integrations/panasonic_viera/panasonic_viera.discovery.ts +32 -3
- package/ts/integrations/panasonic_viera/panasonic_viera.mapper.ts +34 -161
- package/ts/integrations/panasonic_viera/panasonic_viera.types.ts +52 -96
- package/ts/integrations/panasonic_viera/panasonic_viera.validation.ts +56 -0
- package/ts/integrations/pioneer/pioneer.classes.client.ts +132 -428
- package/ts/integrations/pioneer/pioneer.classes.configflow.ts +67 -5
- package/ts/integrations/pioneer/pioneer.classes.integration.ts +225 -11
- package/ts/integrations/pioneer/pioneer.discovery.ts +45 -3
- package/ts/integrations/pioneer/pioneer.mapper.ts +57 -13
- package/ts/integrations/pioneer/pioneer.types.ts +87 -85
- package/ts/integrations/pioneer/pioneer.validation.ts +84 -0
- package/ts/integrations/roku/readme.md +95 -0
- package/ts/integrations/roku/roku.classes.client.ts +194 -131
- package/ts/integrations/roku/roku.classes.configflow.ts +20 -13
- package/ts/integrations/roku/roku.classes.integration.ts +69 -98
- package/ts/integrations/roku/roku.discovery.ts +68 -71
- package/ts/integrations/roku/roku.mapper.ts +17 -52
- package/ts/integrations/roku/roku.types.ts +23 -14
- package/ts/integrations/roku/roku.validation.ts +79 -0
- package/ts/integrations/samsungtv/readme.md +30 -0
- package/ts/integrations/samsungtv/samsungtv.classes.client.ts +107 -481
- package/ts/integrations/samsungtv/samsungtv.classes.configflow.ts +28 -29
- package/ts/integrations/samsungtv/samsungtv.classes.integration.ts +108 -132
- package/ts/integrations/samsungtv/samsungtv.discovery.ts +101 -165
- package/ts/integrations/samsungtv/samsungtv.mapper.ts +20 -127
- package/ts/integrations/samsungtv/samsungtv.types.ts +18 -95
- package/ts/integrations/samsungtv/samsungtv.validation.ts +84 -0
- package/ts/integrations/shelly/readme.md +34 -0
- package/ts/integrations/shelly/shelly.classes.client.ts +275 -137
- package/ts/integrations/shelly/shelly.classes.configflow.ts +24 -10
- package/ts/integrations/shelly/shelly.classes.integration.ts +109 -32
- package/ts/integrations/shelly/shelly.classes.subscription.ts +218 -0
- package/ts/integrations/shelly/shelly.discovery.ts +5 -2
- package/ts/integrations/shelly/shelly.rpc.ts +190 -0
- package/ts/integrations/shelly/shelly.types.ts +16 -4
- package/ts/integrations/sonos/index.ts +3 -0
- package/ts/integrations/sonos/readme.md +74 -0
- package/ts/integrations/sonos/sonos.classes.client.ts +153 -225
- package/ts/integrations/sonos/sonos.classes.configflow.ts +21 -8
- package/ts/integrations/sonos/sonos.classes.integration.ts +234 -72
- package/ts/integrations/sonos/sonos.classes.ssdpprobe.ts +85 -0
- package/ts/integrations/sonos/sonos.config.ts +57 -0
- package/ts/integrations/sonos/sonos.discovery.ts +5 -123
- package/ts/integrations/sonos/sonos.mapper.ts +29 -13
- package/ts/integrations/sonos/sonos.matchers.ts +83 -0
- package/ts/integrations/sonos/sonos.topology.ts +54 -0
- package/ts/integrations/sonos/sonos.types.ts +20 -8
- package/ts/integrations/sonos/sonos.xml.ts +19 -0
- package/ts/integrations/soundtouch/soundtouch.classes.client.ts +152 -571
- package/ts/integrations/soundtouch/soundtouch.classes.configflow.ts +47 -42
- package/ts/integrations/soundtouch/soundtouch.classes.integration.ts +95 -150
- package/ts/integrations/soundtouch/soundtouch.discovery.ts +21 -133
- package/ts/integrations/soundtouch/soundtouch.mapper.ts +36 -207
- package/ts/integrations/soundtouch/soundtouch.types.ts +50 -195
- package/ts/integrations/soundtouch/soundtouch.validation.ts +60 -0
- package/ts/integrations/tasmota/index.ts +4 -0
- package/ts/integrations/tasmota/readme.md +33 -0
- package/ts/integrations/tasmota/tasmota.classes.integration.ts +27 -24
- package/ts/integrations/tasmota/tasmota.classes.runtime.ts +274 -0
- package/ts/integrations/tasmota/tasmota.config.ts +69 -0
- package/ts/integrations/tasmota/tasmota.discovery.ts +84 -0
- package/ts/integrations/tasmota/tasmota.mapper.ts +88 -0
- package/ts/integrations/tasmota/tasmota.types.ts +48 -2
- package/ts/integrations/tplink/index.ts +3 -0
- package/ts/integrations/tplink/readme.md +38 -0
- package/ts/integrations/tplink/tplink.classes.client.ts +56 -75
- package/ts/integrations/tplink/tplink.classes.configflow.ts +48 -100
- package/ts/integrations/tplink/tplink.classes.integration.ts +118 -40
- package/ts/integrations/tplink/tplink.discovery.ts +106 -235
- package/ts/integrations/tplink/tplink.native.mapper.ts +67 -0
- package/ts/integrations/tplink/tplink.native.types.ts +32 -0
- package/ts/integrations/tplink/tplink.validation.ts +50 -0
- package/ts/integrations/tradfri/tradfri.discovery.ts +52 -26
- package/ts/integrations/tuya/readme.md +106 -0
- package/ts/integrations/tuya/tuya.classes.integration.ts +127 -28
- package/ts/integrations/tuya/tuya.classes.runtime.ts +166 -0
- package/ts/integrations/tuya/tuya.mapper.ts +47 -0
- package/ts/integrations/tuya/tuya.types.ts +47 -2
- package/ts/integrations/tuya/tuya.validation.ts +118 -0
- package/ts/integrations/unifi/unifi.mapper.ts +8 -5
- package/ts/integrations/webostv/readme.md +48 -0
- package/ts/integrations/webostv/webostv.classes.client.ts +297 -6
- package/ts/integrations/webostv/webostv.classes.configflow.ts +18 -5
- package/ts/integrations/webostv/webostv.classes.integration.ts +92 -7
- package/ts/integrations/webostv/webostv.discovery.ts +22 -3
- package/ts/integrations/webostv/webostv.mapper.ts +27 -18
- package/ts/integrations/webostv/webostv.types.ts +47 -101
- package/ts/integrations/webostv/webostv.validation.ts +48 -0
- package/ts/integrations/wiz/index.ts +1 -0
- package/ts/integrations/wiz/wiz.classes.client.ts +84 -254
- package/ts/integrations/wiz/wiz.classes.configflow.ts +39 -70
- package/ts/integrations/wiz/wiz.classes.integration.ts +189 -45
- package/ts/integrations/wiz/wiz.discovery.ts +48 -291
- package/ts/integrations/wiz/wiz.mapper.ts +81 -754
- package/ts/integrations/wiz/wiz.types.ts +24 -224
- package/ts/integrations/wiz/wiz.validation.ts +73 -0
- package/ts/integrations/wled/index.ts +1 -0
- package/ts/integrations/wled/readme.md +83 -0
- package/ts/integrations/wled/wled.classes.client.ts +208 -6
- package/ts/integrations/wled/wled.classes.configflow.ts +26 -5
- package/ts/integrations/wled/wled.classes.integration.ts +142 -7
- package/ts/integrations/wled/wled.classes.subscription.ts +122 -0
- package/ts/integrations/wled/wled.commands.ts +54 -0
- package/ts/integrations/wled/wled.discovery.ts +52 -3
- package/ts/integrations/wled/wled.errors.ts +9 -0
- package/ts/integrations/wled/wled.mapper.ts +39 -19
- package/ts/integrations/wled/wled.types.ts +59 -87
- package/ts/integrations/wled/wled.validation.ts +72 -0
- package/ts/integrations/yamaha/index.ts +1 -0
- package/ts/integrations/yamaha/yamaha.classes.client.ts +150 -6
- package/ts/integrations/yamaha/yamaha.classes.configflow.ts +100 -5
- package/ts/integrations/yamaha/yamaha.classes.integration.ts +236 -8
- package/ts/integrations/yamaha/yamaha.discovery.ts +52 -3
- package/ts/integrations/yamaha/yamaha.mapper.ts +65 -13
- package/ts/integrations/yamaha/yamaha.types.ts +77 -97
- package/ts/integrations/yamaha/yamaha.validation.ts +86 -0
- package/ts/integrations/yeelight/readme.md +47 -0
- package/ts/integrations/yeelight/yeelight.classes.client.ts +201 -302
- package/ts/integrations/yeelight/yeelight.classes.configflow.ts +23 -32
- package/ts/integrations/yeelight/yeelight.classes.integration.ts +115 -87
- package/ts/integrations/yeelight/yeelight.discovery.ts +78 -140
- package/ts/integrations/yeelight/yeelight.mapper.ts +61 -191
- package/ts/integrations/yeelight/yeelight.types.ts +31 -162
- package/ts/integrations/yeelight/yeelight.validation.ts +112 -0
- package/ts/integrations/zha/readme.md +23 -0
- package/ts/integrations/zha/zha.discovery.ts +92 -232
- package/ts/integrations/zha/zha.discoveryvalidation.ts +67 -0
- package/ts/integrations/zigbee2mqtt/index.ts +5 -0
- package/ts/integrations/zigbee2mqtt/readme.md +40 -0
- package/ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.configflow.ts +26 -0
- package/ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.integration.ts +23 -0
- package/ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.runtime.ts +414 -0
- package/ts/integrations/zigbee2mqtt/zigbee2mqtt.mapper.ts +172 -0
- package/ts/integrations/zigbee2mqtt/zigbee2mqtt.types.ts +63 -0
- package/ts/integrations/zigbee2mqtt/zigbee2mqtt.validation.ts +65 -0
- package/ts/integrations/zwave_js/readme.md +23 -0
- package/ts/integrations/zwave_js/zwave_js.classes.client.ts +256 -136
- package/ts/integrations/zwave_js/zwave_js.classes.configflow.ts +26 -28
- package/ts/integrations/zwave_js/zwave_js.classes.integration.ts +65 -81
- package/ts/integrations/zwave_js/zwave_js.discovery.ts +100 -15
- package/ts/integrations/zwave_js/zwave_js.mapper.ts +129 -256
- package/ts/integrations/zwave_js/zwave_js.types.ts +32 -19
- package/ts/integrations/zwave_js/zwave_js.validation.ts +191 -0
- package/ts/plugins.ts +12 -3
- package/ts_migration/001.import-json-config.ts +81 -0
- package/ts_migration/index.ts +1 -0
- package/ts/integrations/tasmota/.generated-by-smarthome-exchange +0 -1
- package/ts/integrations/tuya/.generated-by-smarthome-exchange +0 -1
|
@@ -736,4 +736,4 @@ const asRecord = (valueArg) => {
|
|
|
736
736
|
? valueArg
|
|
737
737
|
: undefined;
|
|
738
738
|
};
|
|
739
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9zY2hfc2hjLm1hcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RzL2ludGVncmF0aW9ucy9ib3NjaF9zaGMvYm9zY2hfc2hjLm1hcHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBa0I1QyxNQUFNLGdCQUFnQixHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO0FBQ3ZFLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztBQUN4RixNQUFNLG9CQUFvQixHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQztBQUNoRixNQUFNLGFBQWEsR0FBRyxJQUFJLEdBQUcsQ0FBQztJQUM1QixJQUFJO0lBQ0osS0FBSztJQUNMLE1BQU07SUFDTixXQUFXO0lBQ1gsV0FBVztJQUNYLElBQUk7SUFDSixpQkFBaUI7SUFDakIsS0FBSztJQUNMLFVBQVU7SUFDVixlQUFlO0lBQ2YsV0FBVztJQUNYLE1BQU07SUFDTixTQUFTO0lBQ1QsS0FBSztJQUNMLE1BQU07SUFDTixRQUFRO0lBQ1IsVUFBVTtJQUNWLFVBQVU7SUFDVixLQUFLO0NBQ04sQ0FBQyxDQUFDO0FBQ0gsTUFBTSxlQUFlLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsY0FBYyxFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQztBQUM5RSxNQUFNLGlCQUFpQixHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLDRCQUE0QixFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQztBQUM5RixNQUFNLFdBQVcsR0FB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
|
|
739
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9zY2hfc2hjLm1hcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RzL2ludGVncmF0aW9ucy9ib3NjaF9zaGMvYm9zY2hfc2hjLm1hcHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBa0I1QyxNQUFNLGdCQUFnQixHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO0FBQ3ZFLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztBQUN4RixNQUFNLG9CQUFvQixHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQztBQUNoRixNQUFNLGFBQWEsR0FBRyxJQUFJLEdBQUcsQ0FBQztJQUM1QixJQUFJO0lBQ0osS0FBSztJQUNMLE1BQU07SUFDTixXQUFXO0lBQ1gsV0FBVztJQUNYLElBQUk7SUFDSixpQkFBaUI7SUFDakIsS0FBSztJQUNMLFVBQVU7SUFDVixlQUFlO0lBQ2YsV0FBVztJQUNYLE1BQU07SUFDTixTQUFTO0lBQ1QsS0FBSztJQUNMLE1BQU07SUFDTixRQUFRO0lBQ1IsVUFBVTtJQUNWLFVBQVU7SUFDVixLQUFLO0NBQ04sQ0FBQyxDQUFDO0FBQ0gsTUFBTSxlQUFlLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsY0FBYyxFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQztBQUM5RSxNQUFNLGlCQUFpQixHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLDRCQUE0QixFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQztBQUM5RixNQUFNLFdBQVcsR0FB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
|
|
@@ -1,75 +1,26 @@
|
|
|
1
|
-
import type { IBraviatvConfig, IBraviatvSnapshot } from './braviatv.types.js';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
}
|
|
5
|
-
export declare class BraviatvLiveControlError extends Error {
|
|
6
|
-
constructor(messageArg: string);
|
|
7
|
-
}
|
|
1
|
+
import type { IBraviatvConfig, IBraviatvEffectResult, IBraviatvIntegrationOptions, IBraviatvSetupContext, IBraviatvSnapshot, TBraviatvControl } from './braviatv.types.js';
|
|
2
|
+
import { normalizeBraviatvConfig } from './braviatv.validation.js';
|
|
3
|
+
/** Home admission and caller work only; SonyBraviaProtocol owns every wire operation. */
|
|
8
4
|
export declare class BraviatvClient {
|
|
9
|
-
private
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
volumeUp(): Promise<void>;
|
|
18
|
-
volumeDown(): Promise<void>;
|
|
19
|
-
muteVolume(mutedArg: boolean): Promise<void>;
|
|
20
|
-
mediaPlay(): Promise<void>;
|
|
21
|
-
mediaPause(): Promise<void>;
|
|
22
|
-
mediaStop(): Promise<void>;
|
|
23
|
-
nextTrack(): Promise<void>;
|
|
24
|
-
previousTrack(): Promise<void>;
|
|
25
|
-
selectSource(sourceArg: string): Promise<void>;
|
|
26
|
-
playMedia(mediaTypeArg: string, mediaIdArg: string): Promise<void>;
|
|
27
|
-
sendCommand(commandArg: string): Promise<void>;
|
|
28
|
-
sendCommands(commandsArg: string[], repeatsArg?: number): Promise<void>;
|
|
29
|
-
reboot(): Promise<void>;
|
|
30
|
-
terminateApps(): Promise<void>;
|
|
5
|
+
#private;
|
|
6
|
+
readonly config: ReturnType<typeof normalizeBraviatvConfig>;
|
|
7
|
+
constructor(config: IBraviatvConfig, context: IBraviatvSetupContext, options: IBraviatvIntegrationOptions);
|
|
8
|
+
isHealthy(): boolean;
|
|
9
|
+
start(signal?: AbortSignal): Promise<IBraviatvSnapshot>;
|
|
10
|
+
getObservedSnapshot(): IBraviatvSnapshot;
|
|
11
|
+
getSnapshot(signal?: AbortSignal): Promise<IBraviatvSnapshot>;
|
|
12
|
+
setControl(value: TBraviatvControl, signal?: AbortSignal): Promise<IBraviatvEffectResult>;
|
|
31
13
|
destroy(): Promise<void>;
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
private
|
|
35
|
-
private
|
|
36
|
-
private
|
|
37
|
-
private
|
|
38
|
-
private
|
|
39
|
-
private
|
|
40
|
-
private
|
|
41
|
-
private
|
|
42
|
-
|
|
43
|
-
private
|
|
44
|
-
private stepVolume;
|
|
45
|
-
private findSource;
|
|
46
|
-
private directSource;
|
|
47
|
-
private startSource;
|
|
48
|
-
private sendRestQuick;
|
|
49
|
-
private sendRest;
|
|
50
|
-
private sendIrcc;
|
|
51
|
-
private postIrcc;
|
|
52
|
-
private postJson;
|
|
53
|
-
private postText;
|
|
54
|
-
private request;
|
|
55
|
-
private assertLivePskSupported;
|
|
56
|
-
private hasLivePskConfig;
|
|
57
|
-
private serviceUrl;
|
|
58
|
-
private irccBody;
|
|
59
|
-
private firstResult;
|
|
60
|
-
private commandCode;
|
|
61
|
-
private normalizeCommand;
|
|
62
|
-
private looksLikeIrccCode;
|
|
63
|
-
private snapshotFromManualConfig;
|
|
64
|
-
private systemInfoFromConfig;
|
|
65
|
-
private normalizeSnapshot;
|
|
66
|
-
private normalizeState;
|
|
67
|
-
private normalizeSources;
|
|
68
|
-
private applyVolumeInfo;
|
|
69
|
-
private applyPlayingInfo;
|
|
70
|
-
private inferSourceType;
|
|
71
|
-
private powerFromStatus;
|
|
72
|
-
private updateLocalState;
|
|
73
|
-
private cloneSnapshot;
|
|
74
|
-
private errorMessage;
|
|
14
|
+
/** Explicit cleanup retry acknowledges settled credential failures; it cannot resolve a PSK, construct a facade or replay an effect. */
|
|
15
|
+
retryCleanup(): Promise<void>;
|
|
16
|
+
private drainCleanup;
|
|
17
|
+
private closeProtocol;
|
|
18
|
+
private observe;
|
|
19
|
+
private failure;
|
|
20
|
+
private assertOpen;
|
|
21
|
+
private active;
|
|
22
|
+
private credentialFailure;
|
|
23
|
+
private resolvePsk;
|
|
24
|
+
/** Admission deadline includes queue, caller credential resolution and owned transport drain. */
|
|
25
|
+
private run;
|
|
75
26
|
}
|