@zwave-js/cc 14.0.0-beta.4 → 14.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/build/cjs/cc/AlarmSensorCC.js +381 -266
- package/build/cjs/cc/AlarmSensorCC.js.map +3 -3
- package/build/cjs/cc/AssociationCC.js +669 -503
- package/build/cjs/cc/AssociationCC.js.map +3 -3
- package/build/cjs/cc/AssociationGroupInfoCC.js +633 -492
- package/build/cjs/cc/AssociationGroupInfoCC.js.map +3 -3
- package/build/cjs/cc/BarrierOperatorCC.js +595 -429
- package/build/cjs/cc/BarrierOperatorCC.js.map +3 -3
- package/build/cjs/cc/BasicCC.js +354 -260
- package/build/cjs/cc/BasicCC.js.map +3 -3
- package/build/cjs/cc/BatteryCC.js +427 -345
- package/build/cjs/cc/BatteryCC.js.map +3 -3
- package/build/cjs/cc/BinarySensorCC.js +391 -276
- package/build/cjs/cc/BinarySensorCC.js.map +3 -3
- package/build/cjs/cc/BinarySwitchCC.js +347 -253
- package/build/cjs/cc/BinarySwitchCC.js.map +3 -3
- package/build/cjs/cc/CRC16CC.js +160 -85
- package/build/cjs/cc/CRC16CC.js.map +3 -3
- package/build/cjs/cc/CentralSceneCC.js +459 -324
- package/build/cjs/cc/CentralSceneCC.js.map +3 -3
- package/build/cjs/cc/ClimateControlScheduleCC.js +459 -293
- package/build/cjs/cc/ClimateControlScheduleCC.js.map +3 -3
- package/build/cjs/cc/ClockCC.js +254 -150
- package/build/cjs/cc/ClockCC.js.map +3 -3
- package/build/cjs/cc/ColorSwitchCC.js +758 -610
- package/build/cjs/cc/ColorSwitchCC.js.map +3 -3
- package/build/cjs/cc/ConfigurationCC.js +1700 -1453
- package/build/cjs/cc/ConfigurationCC.js.map +3 -3
- package/build/cjs/cc/DeviceResetLocallyCC.js +125 -49
- package/build/cjs/cc/DeviceResetLocallyCC.js.map +3 -3
- package/build/cjs/cc/DoorLockCC.js +904 -777
- package/build/cjs/cc/DoorLockCC.js.map +3 -3
- package/build/cjs/cc/DoorLockLoggingCC.js +321 -206
- package/build/cjs/cc/DoorLockLoggingCC.js.map +3 -3
- package/build/cjs/cc/EnergyProductionCC.js +249 -160
- package/build/cjs/cc/EnergyProductionCC.js.map +3 -3
- package/build/cjs/cc/EntryControlCC.js +619 -458
- package/build/cjs/cc/EntryControlCC.js.map +3 -3
- package/build/cjs/cc/FirmwareUpdateMetaDataCC.js +898 -698
- package/build/cjs/cc/FirmwareUpdateMetaDataCC.js.map +3 -3
- package/build/cjs/cc/HailCC.js +57 -11
- package/build/cjs/cc/HailCC.js.map +2 -2
- package/build/cjs/cc/HumidityControlModeCC.js +359 -233
- package/build/cjs/cc/HumidityControlModeCC.js.map +3 -3
- package/build/cjs/cc/HumidityControlOperatingStateCC.js +189 -103
- package/build/cjs/cc/HumidityControlOperatingStateCC.js.map +3 -3
- package/build/cjs/cc/HumidityControlSetpointCC.js +682 -495
- package/build/cjs/cc/HumidityControlSetpointCC.js.map +3 -3
- package/build/cjs/cc/InclusionControllerCC.js +205 -114
- package/build/cjs/cc/InclusionControllerCC.js.map +3 -3
- package/build/cjs/cc/IndicatorCC.js +897 -736
- package/build/cjs/cc/IndicatorCC.js.map +3 -3
- package/build/cjs/cc/IrrigationCC.js +1651 -1405
- package/build/cjs/cc/IrrigationCC.js.map +3 -3
- package/build/cjs/cc/LanguageCC.js +268 -171
- package/build/cjs/cc/LanguageCC.js.map +3 -3
- package/build/cjs/cc/LockCC.js +254 -154
- package/build/cjs/cc/LockCC.js.map +3 -3
- package/build/cjs/cc/ManufacturerProprietaryCC.js +189 -129
- package/build/cjs/cc/ManufacturerProprietaryCC.js.map +2 -2
- package/build/cjs/cc/ManufacturerSpecificCC.js +319 -213
- package/build/cjs/cc/ManufacturerSpecificCC.js.map +3 -3
- package/build/cjs/cc/MeterCC.js +827 -707
- package/build/cjs/cc/MeterCC.js.map +3 -3
- package/build/cjs/cc/MultiChannelAssociationCC.js +612 -478
- package/build/cjs/cc/MultiChannelAssociationCC.js.map +3 -3
- package/build/cjs/cc/MultiChannelCC.js +1037 -819
- package/build/cjs/cc/MultiChannelCC.js.map +3 -3
- package/build/cjs/cc/MultiCommandCC.js +172 -97
- package/build/cjs/cc/MultiCommandCC.js.map +3 -3
- package/build/cjs/cc/MultilevelSensorCC.js +589 -449
- package/build/cjs/cc/MultilevelSensorCC.js.map +3 -3
- package/build/cjs/cc/MultilevelSwitchCC.js +587 -439
- package/build/cjs/cc/MultilevelSwitchCC.js.map +3 -3
- package/build/cjs/cc/NoOperationCC.js +89 -27
- package/build/cjs/cc/NoOperationCC.js.map +2 -2
- package/build/cjs/cc/NodeNamingCC.js +417 -277
- package/build/cjs/cc/NodeNamingCC.js.map +3 -3
- package/build/cjs/cc/NotificationCC.js +972 -818
- package/build/cjs/cc/NotificationCC.js.map +3 -3
- package/build/cjs/cc/PowerlevelCC.js +450 -303
- package/build/cjs/cc/PowerlevelCC.js.map +3 -3
- package/build/cjs/cc/ProtectionCC.js +686 -494
- package/build/cjs/cc/ProtectionCC.js.map +3 -3
- package/build/cjs/cc/SceneActivationCC.js +165 -97
- package/build/cjs/cc/SceneActivationCC.js.map +3 -3
- package/build/cjs/cc/SceneActuatorConfigurationCC.js +346 -243
- package/build/cjs/cc/SceneActuatorConfigurationCC.js.map +3 -3
- package/build/cjs/cc/SceneControllerConfigurationCC.js +401 -298
- package/build/cjs/cc/SceneControllerConfigurationCC.js.map +3 -3
- package/build/cjs/cc/ScheduleEntryLockCC.js +1552 -1272
- package/build/cjs/cc/ScheduleEntryLockCC.js.map +3 -3
- package/build/cjs/cc/Security2CC.js +1483 -1219
- package/build/cjs/cc/Security2CC.js.map +3 -3
- package/build/cjs/cc/SecurityCC.js +839 -619
- package/build/cjs/cc/SecurityCC.js.map +3 -3
- package/build/cjs/cc/SoundSwitchCC.js +707 -515
- package/build/cjs/cc/SoundSwitchCC.js.map +3 -3
- package/build/cjs/cc/SupervisionCC.js +327 -237
- package/build/cjs/cc/SupervisionCC.js.map +3 -3
- package/build/cjs/cc/ThermostatFanModeCC.js +386 -263
- package/build/cjs/cc/ThermostatFanModeCC.js.map +3 -3
- package/build/cjs/cc/ThermostatFanStateCC.js +192 -106
- package/build/cjs/cc/ThermostatFanStateCC.js.map +3 -3
- package/build/cjs/cc/ThermostatModeCC.js +425 -302
- package/build/cjs/cc/ThermostatModeCC.js.map +3 -3
- package/build/cjs/cc/ThermostatOperatingStateCC.js +188 -102
- package/build/cjs/cc/ThermostatOperatingStateCC.js.map +3 -3
- package/build/cjs/cc/ThermostatSetbackCC.js +277 -173
- package/build/cjs/cc/ThermostatSetbackCC.js.map +3 -3
- package/build/cjs/cc/ThermostatSetpointCC.js +645 -491
- package/build/cjs/cc/ThermostatSetpointCC.js.map +3 -3
- package/build/cjs/cc/TimeCC.js +515 -353
- package/build/cjs/cc/TimeCC.js.map +3 -3
- package/build/cjs/cc/TimeParametersCC.js +302 -202
- package/build/cjs/cc/TimeParametersCC.js.map +3 -3
- package/build/cjs/cc/TransportServiceCC.js +433 -315
- package/build/cjs/cc/TransportServiceCC.js.map +3 -3
- package/build/cjs/cc/UserCodeCC.js +1385 -1102
- package/build/cjs/cc/UserCodeCC.js.map +3 -3
- package/build/cjs/cc/VersionCC.js +696 -562
- package/build/cjs/cc/VersionCC.js.map +3 -3
- package/build/cjs/cc/WakeUpCC.js +499 -346
- package/build/cjs/cc/WakeUpCC.js.map +3 -3
- package/build/cjs/cc/WindowCoveringCC.js +626 -478
- package/build/cjs/cc/WindowCoveringCC.js.map +3 -3
- package/build/cjs/cc/ZWaveLongRangeCC.js +57 -10
- package/build/cjs/cc/ZWaveLongRangeCC.js.map +2 -2
- package/build/cjs/cc/ZWavePlusCC.js +233 -159
- package/build/cjs/cc/ZWavePlusCC.js.map +3 -3
- package/build/cjs/cc/ZWaveProtocolCC.js +1515 -948
- package/build/cjs/cc/ZWaveProtocolCC.js.map +3 -3
- package/build/cjs/cc/manufacturerProprietary/Decorators.d.ts +4 -4
- package/build/cjs/cc/manufacturerProprietary/Decorators.js.map +1 -1
- package/build/cjs/cc/manufacturerProprietary/FibaroCC.js +395 -274
- package/build/cjs/cc/manufacturerProprietary/FibaroCC.js.map +3 -3
- package/build/cjs/lib/CommandClassDecorators.d.ts +11 -15
- package/build/cjs/lib/CommandClassDecorators.js +19 -20
- package/build/cjs/lib/CommandClassDecorators.js.map +2 -2
- package/build/cjs/lib/Security2/Extension.d.ts +1 -1
- package/build/cjs/lib/Security2/Extension.js +217 -126
- package/build/cjs/lib/Security2/Extension.js.map +3 -3
- package/build/esm/cc/AlarmSensorCC.d.ts.map +1 -1
- package/build/esm/cc/AlarmSensorCC.js +389 -291
- package/build/esm/cc/AlarmSensorCC.js.map +1 -1
- package/build/esm/cc/AssociationCC.d.ts.map +1 -1
- package/build/esm/cc/AssociationCC.js +678 -537
- package/build/esm/cc/AssociationCC.js.map +1 -1
- package/build/esm/cc/AssociationGroupInfoCC.d.ts.map +1 -1
- package/build/esm/cc/AssociationGroupInfoCC.js +659 -539
- package/build/esm/cc/AssociationGroupInfoCC.js.map +1 -1
- package/build/esm/cc/BarrierOperatorCC.d.ts.map +1 -1
- package/build/esm/cc/BarrierOperatorCC.js +634 -493
- package/build/esm/cc/BarrierOperatorCC.js.map +1 -1
- package/build/esm/cc/BasicCC.d.ts.map +1 -1
- package/build/esm/cc/BasicCC.js +380 -302
- package/build/esm/cc/BasicCC.js.map +1 -1
- package/build/esm/cc/BatteryCC.d.ts.map +1 -1
- package/build/esm/cc/BatteryCC.js +449 -384
- package/build/esm/cc/BatteryCC.js.map +1 -1
- package/build/esm/cc/BinarySensorCC.d.ts.map +1 -1
- package/build/esm/cc/BinarySensorCC.js +395 -297
- package/build/esm/cc/BinarySensorCC.js.map +1 -1
- package/build/esm/cc/BinarySwitchCC.d.ts.map +1 -1
- package/build/esm/cc/BinarySwitchCC.js +353 -274
- package/build/esm/cc/BinarySwitchCC.js.map +1 -1
- package/build/esm/cc/CRC16CC.js +162 -98
- package/build/esm/cc/CRC16CC.js.map +1 -1
- package/build/esm/cc/CentralSceneCC.d.ts.map +1 -1
- package/build/esm/cc/CentralSceneCC.js +465 -351
- package/build/esm/cc/CentralSceneCC.js.map +1 -1
- package/build/esm/cc/ClimateControlScheduleCC.d.ts.map +1 -1
- package/build/esm/cc/ClimateControlScheduleCC.js +454 -313
- package/build/esm/cc/ClimateControlScheduleCC.js.map +1 -1
- package/build/esm/cc/ClockCC.js +248 -159
- package/build/esm/cc/ClockCC.js.map +1 -1
- package/build/esm/cc/ColorSwitchCC.d.ts.map +1 -1
- package/build/esm/cc/ColorSwitchCC.js +802 -677
- package/build/esm/cc/ColorSwitchCC.js.map +1 -1
- package/build/esm/cc/ConfigurationCC.js +1899 -1687
- package/build/esm/cc/ConfigurationCC.js.map +1 -1
- package/build/esm/cc/DeviceResetLocallyCC.js +124 -59
- package/build/esm/cc/DeviceResetLocallyCC.js.map +1 -1
- package/build/esm/cc/DoorLockCC.d.ts.map +1 -1
- package/build/esm/cc/DoorLockCC.js +951 -849
- package/build/esm/cc/DoorLockCC.js.map +1 -1
- package/build/esm/cc/DoorLockLoggingCC.d.ts.map +1 -1
- package/build/esm/cc/DoorLockLoggingCC.js +316 -218
- package/build/esm/cc/DoorLockLoggingCC.js.map +1 -1
- package/build/esm/cc/EnergyProductionCC.js +240 -164
- package/build/esm/cc/EnergyProductionCC.js.map +1 -1
- package/build/esm/cc/EntryControlCC.d.ts.map +1 -1
- package/build/esm/cc/EntryControlCC.js +629 -493
- package/build/esm/cc/EntryControlCC.js.map +1 -1
- package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -1
- package/build/esm/cc/FirmwareUpdateMetaDataCC.js +938 -769
- package/build/esm/cc/FirmwareUpdateMetaDataCC.js.map +1 -1
- package/build/esm/cc/HailCC.js +51 -12
- package/build/esm/cc/HailCC.js.map +1 -1
- package/build/esm/cc/HumidityControlModeCC.d.ts.map +1 -1
- package/build/esm/cc/HumidityControlModeCC.js +357 -250
- package/build/esm/cc/HumidityControlModeCC.js.map +1 -1
- package/build/esm/cc/HumidityControlOperatingStateCC.d.ts.map +1 -1
- package/build/esm/cc/HumidityControlOperatingStateCC.js +182 -109
- package/build/esm/cc/HumidityControlOperatingStateCC.js.map +1 -1
- package/build/esm/cc/HumidityControlSetpointCC.d.ts.map +1 -1
- package/build/esm/cc/HumidityControlSetpointCC.js +706 -546
- package/build/esm/cc/HumidityControlSetpointCC.js.map +1 -1
- package/build/esm/cc/InclusionControllerCC.js +197 -119
- package/build/esm/cc/InclusionControllerCC.js.map +1 -1
- package/build/esm/cc/IndicatorCC.js +973 -835
- package/build/esm/cc/IndicatorCC.js.map +1 -1
- package/build/esm/cc/IrrigationCC.d.ts.map +1 -1
- package/build/esm/cc/IrrigationCC.js +1697 -1496
- package/build/esm/cc/IrrigationCC.js.map +1 -1
- package/build/esm/cc/LanguageCC.d.ts.map +1 -1
- package/build/esm/cc/LanguageCC.js +266 -184
- package/build/esm/cc/LanguageCC.js.map +1 -1
- package/build/esm/cc/LockCC.d.ts.map +1 -1
- package/build/esm/cc/LockCC.js +247 -162
- package/build/esm/cc/LockCC.js.map +1 -1
- package/build/esm/cc/ManufacturerProprietaryCC.js +192 -141
- package/build/esm/cc/ManufacturerProprietaryCC.js.map +1 -1
- package/build/esm/cc/ManufacturerSpecificCC.d.ts.map +1 -1
- package/build/esm/cc/ManufacturerSpecificCC.js +312 -223
- package/build/esm/cc/ManufacturerSpecificCC.js.map +1 -1
- package/build/esm/cc/MeterCC.d.ts.map +1 -1
- package/build/esm/cc/MeterCC.js +896 -795
- package/build/esm/cc/MeterCC.js.map +1 -1
- package/build/esm/cc/MultiChannelAssociationCC.d.ts.map +1 -1
- package/build/esm/cc/MultiChannelAssociationCC.js +631 -518
- package/build/esm/cc/MultiChannelAssociationCC.js.map +1 -1
- package/build/esm/cc/MultiChannelCC.d.ts.map +1 -1
- package/build/esm/cc/MultiChannelCC.js +1106 -921
- package/build/esm/cc/MultiChannelCC.js.map +1 -1
- package/build/esm/cc/MultiCommandCC.js +166 -102
- package/build/esm/cc/MultiCommandCC.js.map +1 -1
- package/build/esm/cc/MultilevelSensorCC.d.ts.map +1 -1
- package/build/esm/cc/MultilevelSensorCC.js +616 -497
- package/build/esm/cc/MultilevelSensorCC.js.map +1 -1
- package/build/esm/cc/MultilevelSwitchCC.d.ts.map +1 -1
- package/build/esm/cc/MultilevelSwitchCC.js +621 -496
- package/build/esm/cc/MultilevelSwitchCC.js.map +1 -1
- package/build/esm/cc/NoOperationCC.js +82 -29
- package/build/esm/cc/NoOperationCC.js.map +1 -1
- package/build/esm/cc/NodeNamingCC.d.ts.map +1 -1
- package/build/esm/cc/NodeNamingCC.js +413 -294
- package/build/esm/cc/NodeNamingCC.js.map +1 -1
- package/build/esm/cc/NotificationCC.d.ts.map +1 -1
- package/build/esm/cc/NotificationCC.js +1097 -966
- package/build/esm/cc/NotificationCC.js.map +1 -1
- package/build/esm/cc/PowerlevelCC.js +437 -311
- package/build/esm/cc/PowerlevelCC.js.map +1 -1
- package/build/esm/cc/ProtectionCC.d.ts.map +1 -1
- package/build/esm/cc/ProtectionCC.js +704 -543
- package/build/esm/cc/ProtectionCC.js.map +1 -1
- package/build/esm/cc/SceneActivationCC.d.ts.map +1 -1
- package/build/esm/cc/SceneActivationCC.js +157 -100
- package/build/esm/cc/SceneActivationCC.js.map +1 -1
- package/build/esm/cc/SceneActuatorConfigurationCC.js +357 -269
- package/build/esm/cc/SceneActuatorConfigurationCC.js.map +1 -1
- package/build/esm/cc/SceneControllerConfigurationCC.js +434 -346
- package/build/esm/cc/SceneControllerConfigurationCC.js.map +1 -1
- package/build/esm/cc/ScheduleEntryLockCC.d.ts.map +1 -1
- package/build/esm/cc/ScheduleEntryLockCC.js +1596 -1357
- package/build/esm/cc/ScheduleEntryLockCC.js.map +1 -1
- package/build/esm/cc/Security2CC.js +1633 -1406
- package/build/esm/cc/Security2CC.js.map +1 -1
- package/build/esm/cc/SecurityCC.js +876 -687
- package/build/esm/cc/SecurityCC.js.map +1 -1
- package/build/esm/cc/SoundSwitchCC.d.ts.map +1 -1
- package/build/esm/cc/SoundSwitchCC.js +689 -526
- package/build/esm/cc/SoundSwitchCC.js.map +1 -1
- package/build/esm/cc/SupervisionCC.js +349 -272
- package/build/esm/cc/SupervisionCC.js.map +1 -1
- package/build/esm/cc/ThermostatFanModeCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatFanModeCC.js +388 -284
- package/build/esm/cc/ThermostatFanModeCC.js.map +1 -1
- package/build/esm/cc/ThermostatFanStateCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatFanStateCC.js +184 -111
- package/build/esm/cc/ThermostatFanStateCC.js.map +1 -1
- package/build/esm/cc/ThermostatModeCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatModeCC.js +435 -331
- package/build/esm/cc/ThermostatModeCC.js.map +1 -1
- package/build/esm/cc/ThermostatOperatingStateCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatOperatingStateCC.js +180 -107
- package/build/esm/cc/ThermostatOperatingStateCC.js.map +1 -1
- package/build/esm/cc/ThermostatSetbackCC.js +274 -185
- package/build/esm/cc/ThermostatSetbackCC.js.map +1 -1
- package/build/esm/cc/ThermostatSetpointCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatSetpointCC.js +674 -543
- package/build/esm/cc/ThermostatSetpointCC.js.map +1 -1
- package/build/esm/cc/TimeCC.js +499 -360
- package/build/esm/cc/TimeCC.js.map +1 -1
- package/build/esm/cc/TimeParametersCC.d.ts.map +1 -1
- package/build/esm/cc/TimeParametersCC.js +296 -211
- package/build/esm/cc/TimeParametersCC.js.map +1 -1
- package/build/esm/cc/TransportServiceCC.js +464 -363
- package/build/esm/cc/TransportServiceCC.js.map +1 -1
- package/build/esm/cc/UserCodeCC.d.ts.map +1 -1
- package/build/esm/cc/UserCodeCC.js +1443 -1205
- package/build/esm/cc/UserCodeCC.js.map +1 -1
- package/build/esm/cc/VersionCC.d.ts.map +1 -1
- package/build/esm/cc/VersionCC.js +744 -635
- package/build/esm/cc/VersionCC.js.map +1 -1
- package/build/esm/cc/WakeUpCC.d.ts.map +1 -1
- package/build/esm/cc/WakeUpCC.js +494 -364
- package/build/esm/cc/WakeUpCC.js.map +1 -1
- package/build/esm/cc/WindowCoveringCC.d.ts.map +1 -1
- package/build/esm/cc/WindowCoveringCC.js +655 -530
- package/build/esm/cc/WindowCoveringCC.js.map +1 -1
- package/build/esm/cc/ZWaveLongRangeCC.js +51 -11
- package/build/esm/cc/ZWaveLongRangeCC.js.map +1 -1
- package/build/esm/cc/ZWavePlusCC.d.ts.map +1 -1
- package/build/esm/cc/ZWavePlusCC.js +223 -162
- package/build/esm/cc/ZWavePlusCC.js.map +1 -1
- package/build/esm/cc/ZWaveProtocolCC.js +1443 -953
- package/build/esm/cc/ZWaveProtocolCC.js.map +1 -1
- package/build/esm/cc/manufacturerProprietary/Decorators.d.ts +4 -4
- package/build/esm/cc/manufacturerProprietary/Decorators.d.ts.map +1 -1
- package/build/esm/cc/manufacturerProprietary/FibaroCC.js +390 -286
- package/build/esm/cc/manufacturerProprietary/FibaroCC.js.map +1 -1
- package/build/esm/lib/CommandClassDecorators.d.ts +11 -15
- package/build/esm/lib/CommandClassDecorators.d.ts.map +1 -1
- package/build/esm/lib/CommandClassDecorators.js +24 -24
- package/build/esm/lib/CommandClassDecorators.js.map +1 -1
- package/build/esm/lib/Security2/Extension.d.ts +1 -1
- package/build/esm/lib/Security2/Extension.d.ts.map +1 -1
- package/build/esm/lib/Security2/Extension.js +207 -123
- package/build/esm/lib/Security2/Extension.js.map +1 -1
- package/package.json +6 -6
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/cc/ManufacturerSpecificCC.ts"],
|
|
4
|
-
"sourcesContent": ["import type { MessageOrCCLogEntry, WithAddress } from \"@zwave-js/core/safe\";\nimport {\n\tCommandClasses,\n\ttype MaybeNotKnown,\n\tMessagePriority,\n\tValueMetadata,\n\tZWaveError,\n\tZWaveErrorCodes,\n\tvalidatePayload,\n} from \"@zwave-js/core/safe\";\nimport type {\n\tCCEncodingContext,\n\tCCParsingContext,\n\tGetValueDB,\n} from \"@zwave-js/host/safe\";\nimport { Bytes } from \"@zwave-js/shared/safe\";\nimport { getEnumMemberName, num2hex, pick } from \"@zwave-js/shared/safe\";\nimport { validateArgs } from \"@zwave-js/transformers\";\nimport { CCAPI, PhysicalCCAPI } from \"../lib/API.js\";\nimport {\n\ttype CCRaw,\n\tCommandClass,\n\ttype InterviewContext,\n} from \"../lib/CommandClass.js\";\nimport {\n\tAPI,\n\tCCCommand,\n\tccValue,\n\tccValues,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n} from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport { DeviceIdType, ManufacturerSpecificCommand } from \"../lib/_Types.js\";\n\nexport const ManufacturerSpecificCCValues = Object.freeze({\n\t...V.defineStaticCCValues(CommandClasses[\"Manufacturer Specific\"], {\n\t\t...V.staticProperty(\n\t\t\t\"manufacturerId\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnlyUInt16,\n\t\t\t\tlabel: \"Manufacturer ID\",\n\t\t\t} as const,\n\t\t\t{ supportsEndpoints: false },\n\t\t),\n\n\t\t...V.staticProperty(\n\t\t\t\"productType\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnlyUInt16,\n\t\t\t\tlabel: \"Product type\",\n\t\t\t} as const,\n\t\t\t{ supportsEndpoints: false },\n\t\t),\n\n\t\t...V.staticProperty(\n\t\t\t\"productId\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnlyUInt16,\n\t\t\t\tlabel: \"Product ID\",\n\t\t\t} as const,\n\t\t\t{ supportsEndpoints: false },\n\t\t),\n\t}),\n\n\t...V.defineDynamicCCValues(CommandClasses[\"Manufacturer Specific\"], {\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"deviceId\",\n\t\t\t\"deviceId\",\n\t\t\t(type: DeviceIdType) => getEnumMemberName(DeviceIdType, type),\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"deviceId\"\n\t\t\t\t&& typeof propertyKey === \"string\"\n\t\t\t\t&& propertyKey in DeviceIdType,\n\t\t\t(type: DeviceIdType) => ({\n\t\t\t\t...ValueMetadata.ReadOnlyString,\n\t\t\t\tlabel: `Device ID (${getEnumMemberName(DeviceIdType, type)})`,\n\t\t\t}),\n\t\t\t{ minVersion: 2 } as const,\n\t\t),\n\t}),\n});\n\n// @noSetValueAPI This CC is read-only\n\n@API(CommandClasses[\"Manufacturer Specific\"])\nexport class ManufacturerSpecificCCAPI extends PhysicalCCAPI {\n\tpublic supportsCommand(\n\t\tcmd: ManufacturerSpecificCommand,\n\t): MaybeNotKnown<boolean> {\n\t\tswitch (cmd) {\n\t\t\tcase ManufacturerSpecificCommand.Get:\n\t\t\tcase ManufacturerSpecificCommand.Report:\n\t\t\t\treturn true; // This is mandatory\n\t\t\tcase ManufacturerSpecificCommand.DeviceSpecificGet:\n\t\t\tcase ManufacturerSpecificCommand.DeviceSpecificReport:\n\t\t\t\treturn this.version >= 2;\n\t\t}\n\t\treturn super.supportsCommand(cmd);\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async get() {\n\t\tthis.assertSupportsCommand(\n\t\t\tManufacturerSpecificCommand,\n\t\t\tManufacturerSpecificCommand.Get,\n\t\t);\n\n\t\tconst cc = new ManufacturerSpecificCCGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tManufacturerSpecificCCReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\n\t\t\t\t\"manufacturerId\",\n\t\t\t\t\"productType\",\n\t\t\t\t\"productId\",\n\t\t\t]);\n\t\t}\n\t}\n\n\t@validateArgs()\n\tpublic async deviceSpecificGet(\n\t\tdeviceIdType: DeviceIdType,\n\t): Promise<MaybeNotKnown<string>> {\n\t\tthis.assertSupportsCommand(\n\t\t\tManufacturerSpecificCommand,\n\t\t\tManufacturerSpecificCommand.DeviceSpecificGet,\n\t\t);\n\n\t\tconst cc = new ManufacturerSpecificCCDeviceSpecificGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tdeviceIdType,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tManufacturerSpecificCCDeviceSpecificReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\treturn response?.deviceId;\n\t}\n\n\t@validateArgs()\n\tpublic async sendReport(\n\t\toptions: ManufacturerSpecificCCReportOptions,\n\t): Promise<void> {\n\t\tthis.assertSupportsCommand(\n\t\t\tManufacturerSpecificCommand,\n\t\t\tManufacturerSpecificCommand.Report,\n\t\t);\n\n\t\tconst cc = new ManufacturerSpecificCCReport({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\t...options,\n\t\t});\n\t\tawait this.host.sendCommand(cc, this.commandOptions);\n\t}\n}\n\n@commandClass(CommandClasses[\"Manufacturer Specific\"])\n@implementedVersion(2)\n@ccValues(ManufacturerSpecificCCValues)\nexport class ManufacturerSpecificCC extends CommandClass {\n\tdeclare ccCommand: ManufacturerSpecificCommand;\n\n\tpublic determineRequiredCCInterviews(): readonly CommandClasses[] {\n\t\t// The Manufacturer Specific CC MUST be interviewed first\n\t\treturn [];\n\t}\n\n\tpublic async interview(\n\t\tctx: InterviewContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Manufacturer Specific\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({ priority: MessagePriority.NodeQuery });\n\n\t\tif (node.id !== ctx.ownNodeId) {\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: `Interviewing ${this.ccName}...`,\n\t\t\t\tdirection: \"none\",\n\t\t\t});\n\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: \"querying manufacturer information...\",\n\t\t\t\tdirection: \"outbound\",\n\t\t\t});\n\t\t\tconst mfResp = await api.get();\n\t\t\tif (mfResp) {\n\t\t\t\tconst logMessage =\n\t\t\t\t\t`received response for manufacturer information:\n manufacturer: ${\n\t\t\t\t\t\tctx.lookupManufacturer(\n\t\t\t\t\t\t\tmfResp.manufacturerId,\n\t\t\t\t\t\t)\n\t\t\t\t\t\t|| \"unknown\"\n\t\t\t\t\t} (${num2hex(mfResp.manufacturerId)})\n product type: ${num2hex(mfResp.productType)}\n product id: ${num2hex(mfResp.productId)}`;\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\t\tmessage: logMessage,\n\t\t\t\t\tdirection: \"inbound\",\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\t// Remember that the interview is complete\n\t\tthis.setInterviewComplete(ctx, true);\n\t}\n}\n\n// @publicAPI\nexport interface ManufacturerSpecificCCReportOptions {\n\tmanufacturerId: number;\n\tproductType: number;\n\tproductId: number;\n}\n\n@CCCommand(ManufacturerSpecificCommand.Report)\nexport class ManufacturerSpecificCCReport extends ManufacturerSpecificCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ManufacturerSpecificCCReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\tthis.manufacturerId = options.manufacturerId;\n\t\tthis.productType = options.productType;\n\t\tthis.productId = options.productId;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ManufacturerSpecificCCReport {\n\t\tvalidatePayload(raw.payload.length >= 6);\n\t\tconst manufacturerId = raw.payload.readUInt16BE(0);\n\t\tconst productType = raw.payload.readUInt16BE(2);\n\t\tconst productId = raw.payload.readUInt16BE(4);\n\n\t\treturn new ManufacturerSpecificCCReport({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tmanufacturerId,\n\t\t\tproductType,\n\t\t\tproductId,\n\t\t});\n\t}\n\n\t@ccValue(ManufacturerSpecificCCValues.manufacturerId)\n\tpublic readonly manufacturerId: number;\n\n\t@ccValue(ManufacturerSpecificCCValues.productType)\n\tpublic readonly productType: number;\n\n\t@ccValue(ManufacturerSpecificCCValues.productId)\n\tpublic readonly productId: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Bytes {\n\t\tthis.payload = new Bytes(6);\n\t\tthis.payload.writeUInt16BE(this.manufacturerId, 0);\n\t\tthis.payload.writeUInt16BE(this.productType, 2);\n\t\tthis.payload.writeUInt16BE(this.productId, 4);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"manufacturer id\": num2hex(this.manufacturerId),\n\t\t\t\t\"product type\": num2hex(this.productType),\n\t\t\t\t\"product id\": num2hex(this.productId),\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(ManufacturerSpecificCommand.Get)\n@expectedCCResponse(ManufacturerSpecificCCReport)\nexport class ManufacturerSpecificCCGet extends ManufacturerSpecificCC {}\n\n// @publicAPI\nexport interface ManufacturerSpecificCCDeviceSpecificReportOptions {\n\ttype: DeviceIdType;\n\tdeviceId: string;\n}\n\n@CCCommand(ManufacturerSpecificCommand.DeviceSpecificReport)\nexport class ManufacturerSpecificCCDeviceSpecificReport\n\textends ManufacturerSpecificCC\n{\n\tpublic constructor(\n\t\toptions: WithAddress<ManufacturerSpecificCCDeviceSpecificReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.type = options.type;\n\t\tthis.deviceId = options.deviceId;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ManufacturerSpecificCCDeviceSpecificReport {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst type: DeviceIdType = raw.payload[0] & 0b111;\n\t\tconst dataFormat = raw.payload[1] >>> 5;\n\t\tconst dataLength = raw.payload[1] & 0b11111;\n\t\tvalidatePayload(dataLength > 0, raw.payload.length >= 2 + dataLength);\n\t\tconst deviceIdData = raw.payload.subarray(2, 2 + dataLength);\n\t\tconst deviceId: string = dataFormat === 0\n\t\t\t? deviceIdData.toString(\"utf8\")\n\t\t\t: \"0x\" + deviceIdData.toString(\"hex\");\n\n\t\treturn new ManufacturerSpecificCCDeviceSpecificReport({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\ttype,\n\t\t\tdeviceId,\n\t\t});\n\t}\n\n\tpublic readonly type: DeviceIdType;\n\n\t@ccValue(\n\t\tManufacturerSpecificCCValues.deviceId,\n\t\t(self: ManufacturerSpecificCCDeviceSpecificReport) =>\n\t\t\t[self.type] as const,\n\t)\n\tpublic readonly deviceId: string;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"device id type\": getEnumMemberName(DeviceIdType, this.type),\n\t\t\t\t\"device id\": this.deviceId,\n\t\t\t},\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface ManufacturerSpecificCCDeviceSpecificGetOptions {\n\tdeviceIdType: DeviceIdType;\n}\n\n@CCCommand(ManufacturerSpecificCommand.DeviceSpecificGet)\n@expectedCCResponse(ManufacturerSpecificCCDeviceSpecificReport)\nexport class ManufacturerSpecificCCDeviceSpecificGet\n\textends ManufacturerSpecificCC\n{\n\tpublic constructor(\n\t\toptions: WithAddress<ManufacturerSpecificCCDeviceSpecificGetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.deviceIdType = options.deviceIdType;\n\t}\n\n\tpublic static from(\n\t\t_raw: CCRaw,\n\t\t_ctx: CCParsingContext,\n\t): ManufacturerSpecificCCDeviceSpecificGet {\n\t\tthrow new ZWaveError(\n\t\t\t`${this.name}: deserialization not implemented`,\n\t\t\tZWaveErrorCodes.Deserialization_NotImplemented,\n\t\t);\n\n\t\t// return new ManufacturerSpecificCCDeviceSpecificGet({\n\t\t// \tnodeId: ctx.sourceNodeId,\n\t\t// });\n\t}\n\n\tpublic deviceIdType: DeviceIdType;\n\n\tpublic serialize(ctx: CCEncodingContext): Bytes {\n\t\tthis.payload = Bytes.from([(this.deviceIdType || 0) & 0b111]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"device id type\": getEnumMemberName(\n\t\t\t\t\tDeviceIdType,\n\t\t\t\t\tthis.deviceIdType,\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t}\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kBAQO;AAMP,IAAAA,eAAsB;AACtB,IAAAA,eAAiD;AAEjD,iBAAqC;AACrC,0BAIO;AACP,oCAQO;AACP,oBAAkB;AAClB,mBAA0D
|
|
6
|
-
"names": ["import_safe"
|
|
4
|
+
"sourcesContent": ["import type { MessageOrCCLogEntry, WithAddress } from \"@zwave-js/core/safe\";\nimport {\n\tCommandClasses,\n\ttype MaybeNotKnown,\n\tMessagePriority,\n\tValueMetadata,\n\tZWaveError,\n\tZWaveErrorCodes,\n\tvalidatePayload,\n} from \"@zwave-js/core/safe\";\nimport type {\n\tCCEncodingContext,\n\tCCParsingContext,\n\tGetValueDB,\n} from \"@zwave-js/host/safe\";\nimport { Bytes } from \"@zwave-js/shared/safe\";\nimport { getEnumMemberName, num2hex, pick } from \"@zwave-js/shared/safe\";\nimport { validateArgs } from \"@zwave-js/transformers\";\nimport { CCAPI, PhysicalCCAPI } from \"../lib/API.js\";\nimport {\n\ttype CCRaw,\n\tCommandClass,\n\ttype InterviewContext,\n} from \"../lib/CommandClass.js\";\nimport {\n\tAPI,\n\tCCCommand,\n\tccValueProperty,\n\tccValues,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n} from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport { DeviceIdType, ManufacturerSpecificCommand } from \"../lib/_Types.js\";\n\nexport const ManufacturerSpecificCCValues = Object.freeze({\n\t...V.defineStaticCCValues(CommandClasses[\"Manufacturer Specific\"], {\n\t\t...V.staticProperty(\n\t\t\t\"manufacturerId\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnlyUInt16,\n\t\t\t\tlabel: \"Manufacturer ID\",\n\t\t\t} as const,\n\t\t\t{ supportsEndpoints: false },\n\t\t),\n\n\t\t...V.staticProperty(\n\t\t\t\"productType\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnlyUInt16,\n\t\t\t\tlabel: \"Product type\",\n\t\t\t} as const,\n\t\t\t{ supportsEndpoints: false },\n\t\t),\n\n\t\t...V.staticProperty(\n\t\t\t\"productId\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnlyUInt16,\n\t\t\t\tlabel: \"Product ID\",\n\t\t\t} as const,\n\t\t\t{ supportsEndpoints: false },\n\t\t),\n\t}),\n\n\t...V.defineDynamicCCValues(CommandClasses[\"Manufacturer Specific\"], {\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"deviceId\",\n\t\t\t\"deviceId\",\n\t\t\t(type: DeviceIdType) => getEnumMemberName(DeviceIdType, type),\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"deviceId\"\n\t\t\t\t&& typeof propertyKey === \"string\"\n\t\t\t\t&& propertyKey in DeviceIdType,\n\t\t\t(type: DeviceIdType) => ({\n\t\t\t\t...ValueMetadata.ReadOnlyString,\n\t\t\t\tlabel: `Device ID (${getEnumMemberName(DeviceIdType, type)})`,\n\t\t\t}),\n\t\t\t{ minVersion: 2 } as const,\n\t\t),\n\t}),\n});\n\n// @noSetValueAPI This CC is read-only\n\n@API(CommandClasses[\"Manufacturer Specific\"])\nexport class ManufacturerSpecificCCAPI extends PhysicalCCAPI {\n\tpublic supportsCommand(\n\t\tcmd: ManufacturerSpecificCommand,\n\t): MaybeNotKnown<boolean> {\n\t\tswitch (cmd) {\n\t\t\tcase ManufacturerSpecificCommand.Get:\n\t\t\tcase ManufacturerSpecificCommand.Report:\n\t\t\t\treturn true; // This is mandatory\n\t\t\tcase ManufacturerSpecificCommand.DeviceSpecificGet:\n\t\t\tcase ManufacturerSpecificCommand.DeviceSpecificReport:\n\t\t\t\treturn this.version >= 2;\n\t\t}\n\t\treturn super.supportsCommand(cmd);\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async get() {\n\t\tthis.assertSupportsCommand(\n\t\t\tManufacturerSpecificCommand,\n\t\t\tManufacturerSpecificCommand.Get,\n\t\t);\n\n\t\tconst cc = new ManufacturerSpecificCCGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tManufacturerSpecificCCReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\n\t\t\t\t\"manufacturerId\",\n\t\t\t\t\"productType\",\n\t\t\t\t\"productId\",\n\t\t\t]);\n\t\t}\n\t}\n\n\t@validateArgs()\n\tpublic async deviceSpecificGet(\n\t\tdeviceIdType: DeviceIdType,\n\t): Promise<MaybeNotKnown<string>> {\n\t\tthis.assertSupportsCommand(\n\t\t\tManufacturerSpecificCommand,\n\t\t\tManufacturerSpecificCommand.DeviceSpecificGet,\n\t\t);\n\n\t\tconst cc = new ManufacturerSpecificCCDeviceSpecificGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tdeviceIdType,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tManufacturerSpecificCCDeviceSpecificReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\treturn response?.deviceId;\n\t}\n\n\t@validateArgs()\n\tpublic async sendReport(\n\t\toptions: ManufacturerSpecificCCReportOptions,\n\t): Promise<void> {\n\t\tthis.assertSupportsCommand(\n\t\t\tManufacturerSpecificCommand,\n\t\t\tManufacturerSpecificCommand.Report,\n\t\t);\n\n\t\tconst cc = new ManufacturerSpecificCCReport({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\t...options,\n\t\t});\n\t\tawait this.host.sendCommand(cc, this.commandOptions);\n\t}\n}\n\n@commandClass(CommandClasses[\"Manufacturer Specific\"])\n@implementedVersion(2)\n@ccValues(ManufacturerSpecificCCValues)\nexport class ManufacturerSpecificCC extends CommandClass {\n\tdeclare ccCommand: ManufacturerSpecificCommand;\n\n\tpublic determineRequiredCCInterviews(): readonly CommandClasses[] {\n\t\t// The Manufacturer Specific CC MUST be interviewed first\n\t\treturn [];\n\t}\n\n\tpublic async interview(\n\t\tctx: InterviewContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Manufacturer Specific\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({ priority: MessagePriority.NodeQuery });\n\n\t\tif (node.id !== ctx.ownNodeId) {\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: `Interviewing ${this.ccName}...`,\n\t\t\t\tdirection: \"none\",\n\t\t\t});\n\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: \"querying manufacturer information...\",\n\t\t\t\tdirection: \"outbound\",\n\t\t\t});\n\t\t\tconst mfResp = await api.get();\n\t\t\tif (mfResp) {\n\t\t\t\tconst logMessage =\n\t\t\t\t\t`received response for manufacturer information:\n manufacturer: ${\n\t\t\t\t\t\tctx.lookupManufacturer(\n\t\t\t\t\t\t\tmfResp.manufacturerId,\n\t\t\t\t\t\t)\n\t\t\t\t\t\t|| \"unknown\"\n\t\t\t\t\t} (${num2hex(mfResp.manufacturerId)})\n product type: ${num2hex(mfResp.productType)}\n product id: ${num2hex(mfResp.productId)}`;\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\t\tmessage: logMessage,\n\t\t\t\t\tdirection: \"inbound\",\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\t// Remember that the interview is complete\n\t\tthis.setInterviewComplete(ctx, true);\n\t}\n}\n\n// @publicAPI\nexport interface ManufacturerSpecificCCReportOptions {\n\tmanufacturerId: number;\n\tproductType: number;\n\tproductId: number;\n}\n\n@CCCommand(ManufacturerSpecificCommand.Report)\n@ccValueProperty(\"manufacturerId\", ManufacturerSpecificCCValues.manufacturerId)\n@ccValueProperty(\"productType\", ManufacturerSpecificCCValues.productType)\n@ccValueProperty(\"productId\", ManufacturerSpecificCCValues.productId)\nexport class ManufacturerSpecificCCReport extends ManufacturerSpecificCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ManufacturerSpecificCCReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\tthis.manufacturerId = options.manufacturerId;\n\t\tthis.productType = options.productType;\n\t\tthis.productId = options.productId;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ManufacturerSpecificCCReport {\n\t\tvalidatePayload(raw.payload.length >= 6);\n\t\tconst manufacturerId = raw.payload.readUInt16BE(0);\n\t\tconst productType = raw.payload.readUInt16BE(2);\n\t\tconst productId = raw.payload.readUInt16BE(4);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tmanufacturerId,\n\t\t\tproductType,\n\t\t\tproductId,\n\t\t});\n\t}\n\n\tpublic readonly manufacturerId: number;\n\n\tpublic readonly productType: number;\n\n\tpublic readonly productId: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Bytes {\n\t\tthis.payload = new Bytes(6);\n\t\tthis.payload.writeUInt16BE(this.manufacturerId, 0);\n\t\tthis.payload.writeUInt16BE(this.productType, 2);\n\t\tthis.payload.writeUInt16BE(this.productId, 4);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"manufacturer id\": num2hex(this.manufacturerId),\n\t\t\t\t\"product type\": num2hex(this.productType),\n\t\t\t\t\"product id\": num2hex(this.productId),\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(ManufacturerSpecificCommand.Get)\n@expectedCCResponse(ManufacturerSpecificCCReport)\nexport class ManufacturerSpecificCCGet extends ManufacturerSpecificCC {}\n\n// @publicAPI\nexport interface ManufacturerSpecificCCDeviceSpecificReportOptions {\n\ttype: DeviceIdType;\n\tdeviceId: string;\n}\n\n@CCCommand(ManufacturerSpecificCommand.DeviceSpecificReport)\n@ccValueProperty(\n\t\"deviceId\",\n\tManufacturerSpecificCCValues.deviceId,\n\t(self) => [self.type],\n)\nexport class ManufacturerSpecificCCDeviceSpecificReport\n\textends ManufacturerSpecificCC\n{\n\tpublic constructor(\n\t\toptions: WithAddress<ManufacturerSpecificCCDeviceSpecificReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.type = options.type;\n\t\tthis.deviceId = options.deviceId;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ManufacturerSpecificCCDeviceSpecificReport {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst type: DeviceIdType = raw.payload[0] & 0b111;\n\t\tconst dataFormat = raw.payload[1] >>> 5;\n\t\tconst dataLength = raw.payload[1] & 0b11111;\n\t\tvalidatePayload(dataLength > 0, raw.payload.length >= 2 + dataLength);\n\t\tconst deviceIdData = raw.payload.subarray(2, 2 + dataLength);\n\t\tconst deviceId: string = dataFormat === 0\n\t\t\t? deviceIdData.toString(\"utf8\")\n\t\t\t: \"0x\" + deviceIdData.toString(\"hex\");\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\ttype,\n\t\t\tdeviceId,\n\t\t});\n\t}\n\n\tpublic readonly type: DeviceIdType;\n\n\tpublic readonly deviceId: string;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"device id type\": getEnumMemberName(DeviceIdType, this.type),\n\t\t\t\t\"device id\": this.deviceId,\n\t\t\t},\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface ManufacturerSpecificCCDeviceSpecificGetOptions {\n\tdeviceIdType: DeviceIdType;\n}\n\n@CCCommand(ManufacturerSpecificCommand.DeviceSpecificGet)\n@expectedCCResponse(ManufacturerSpecificCCDeviceSpecificReport)\nexport class ManufacturerSpecificCCDeviceSpecificGet\n\textends ManufacturerSpecificCC\n{\n\tpublic constructor(\n\t\toptions: WithAddress<ManufacturerSpecificCCDeviceSpecificGetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.deviceIdType = options.deviceIdType;\n\t}\n\n\tpublic static from(\n\t\t_raw: CCRaw,\n\t\t_ctx: CCParsingContext,\n\t): ManufacturerSpecificCCDeviceSpecificGet {\n\t\tthrow new ZWaveError(\n\t\t\t`${this.name}: deserialization not implemented`,\n\t\t\tZWaveErrorCodes.Deserialization_NotImplemented,\n\t\t);\n\n\t\t// return new ManufacturerSpecificCCDeviceSpecificGet({\n\t\t// \tnodeId: ctx.sourceNodeId,\n\t\t// });\n\t}\n\n\tpublic deviceIdType: DeviceIdType;\n\n\tpublic serialize(ctx: CCEncodingContext): Bytes {\n\t\tthis.payload = Bytes.from([(this.deviceIdType || 0) & 0b111]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"device id type\": getEnumMemberName(\n\t\t\t\t\tDeviceIdType,\n\t\t\t\t\tthis.deviceIdType,\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t}\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_safe"]
|
|
7
7
|
}
|