@zwave-js/cc 9.3.1-0-pr-4662-79458fb
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/cc/AlarmSensorCC.d.ts +54 -0
- package/build/cc/AlarmSensorCC.d.ts.map +1 -0
- package/build/cc/AlarmSensorCC.js +378 -0
- package/build/cc/AlarmSensorCC.js.map +1 -0
- package/build/cc/AssociationCC.d.ts +123 -0
- package/build/cc/AssociationCC.d.ts.map +1 -0
- package/build/cc/AssociationCC.js +615 -0
- package/build/cc/AssociationCC.js.map +1 -0
- package/build/cc/AssociationGroupInfoCC.d.ts +97 -0
- package/build/cc/AssociationGroupInfoCC.d.ts.map +1 -0
- package/build/cc/AssociationGroupInfoCC.js +530 -0
- package/build/cc/AssociationGroupInfoCC.js.map +1 -0
- package/build/cc/BarrierOperatorCC.d.ts +75 -0
- package/build/cc/BarrierOperatorCC.d.ts.map +1 -0
- package/build/cc/BarrierOperatorCC.js +492 -0
- package/build/cc/BarrierOperatorCC.js.map +1 -0
- package/build/cc/BasicCC.d.ts +51 -0
- package/build/cc/BasicCC.d.ts.map +1 -0
- package/build/cc/BasicCC.js +344 -0
- package/build/cc/BasicCC.js.map +1 -0
- package/build/cc/BatteryCC.d.ts +56 -0
- package/build/cc/BatteryCC.d.ts.map +1 -0
- package/build/cc/BatteryCC.js +417 -0
- package/build/cc/BatteryCC.js.map +1 -0
- package/build/cc/BinarySensorCC.d.ts +52 -0
- package/build/cc/BinarySensorCC.d.ts.map +1 -0
- package/build/cc/BinarySensorCC.js +321 -0
- package/build/cc/BinarySensorCC.js.map +1 -0
- package/build/cc/BinarySwitchCC.d.ts +55 -0
- package/build/cc/BinarySwitchCC.d.ts.map +1 -0
- package/build/cc/BinarySwitchCC.js +327 -0
- package/build/cc/BinarySwitchCC.js.map +1 -0
- package/build/cc/CRC16CC.d.ts +28 -0
- package/build/cc/CRC16CC.d.ts.map +1 -0
- package/build/cc/CRC16CC.js +109 -0
- package/build/cc/CRC16CC.js.map +1 -0
- package/build/cc/CentralSceneCC.d.ts +69 -0
- package/build/cc/CentralSceneCC.d.ts.map +1 -0
- package/build/cc/CentralSceneCC.js +443 -0
- package/build/cc/CentralSceneCC.js.map +1 -0
- package/build/cc/ClimateControlScheduleCC.d.ts +78 -0
- package/build/cc/ClimateControlScheduleCC.d.ts.map +1 -0
- package/build/cc/ClimateControlScheduleCC.js +417 -0
- package/build/cc/ClimateControlScheduleCC.js.map +1 -0
- package/build/cc/ClockCC.d.ts +40 -0
- package/build/cc/ClockCC.d.ts.map +1 -0
- package/build/cc/ClockCC.js +185 -0
- package/build/cc/ClockCC.js.map +1 -0
- package/build/cc/ColorSwitchCC.d.ts +98 -0
- package/build/cc/ColorSwitchCC.d.ts.map +1 -0
- package/build/cc/ColorSwitchCC.js +1045 -0
- package/build/cc/ColorSwitchCC.js.map +1 -0
- package/build/cc/ConfigurationCC.d.ts +315 -0
- package/build/cc/ConfigurationCC.d.ts.map +1 -0
- package/build/cc/ConfigurationCC.js +2257 -0
- package/build/cc/ConfigurationCC.js.map +1 -0
- package/build/cc/DeviceResetLocallyCC.d.ts +9 -0
- package/build/cc/DeviceResetLocallyCC.d.ts.map +1 -0
- package/build/cc/DeviceResetLocallyCC.js +28 -0
- package/build/cc/DeviceResetLocallyCC.js.map +1 -0
- package/build/cc/DoorLockCC.d.ts +116 -0
- package/build/cc/DoorLockCC.d.ts.map +1 -0
- package/build/cc/DoorLockCC.js +1112 -0
- package/build/cc/DoorLockCC.js.map +1 -0
- package/build/cc/DoorLockLoggingCC.d.ts +41 -0
- package/build/cc/DoorLockLoggingCC.d.ts.map +1 -0
- package/build/cc/DoorLockLoggingCC.js +288 -0
- package/build/cc/DoorLockLoggingCC.js.map +1 -0
- package/build/cc/EntryControlCC.d.ts +71 -0
- package/build/cc/EntryControlCC.d.ts.map +1 -0
- package/build/cc/EntryControlCC.js +492 -0
- package/build/cc/EntryControlCC.js.map +1 -0
- package/build/cc/FirmwareUpdateMetaDataCC.d.ts +148 -0
- package/build/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -0
- package/build/cc/FirmwareUpdateMetaDataCC.js +727 -0
- package/build/cc/FirmwareUpdateMetaDataCC.js.map +1 -0
- package/build/cc/HailCC.d.ts +6 -0
- package/build/cc/HailCC.d.ts.map +1 -0
- package/build/cc/HailCC.js +23 -0
- package/build/cc/HailCC.js.map +1 -0
- package/build/cc/HumidityControlModeCC.d.ts +47 -0
- package/build/cc/HumidityControlModeCC.d.ts.map +1 -0
- package/build/cc/HumidityControlModeCC.js +288 -0
- package/build/cc/HumidityControlModeCC.js.map +1 -0
- package/build/cc/HumidityControlOperatingStateCC.d.ts +24 -0
- package/build/cc/HumidityControlOperatingStateCC.d.ts.map +1 -0
- package/build/cc/HumidityControlOperatingStateCC.js +129 -0
- package/build/cc/HumidityControlOperatingStateCC.js.map +1 -0
- package/build/cc/HumidityControlSetpointCC.d.ts +103 -0
- package/build/cc/HumidityControlSetpointCC.d.ts.map +1 -0
- package/build/cc/HumidityControlSetpointCC.js +626 -0
- package/build/cc/HumidityControlSetpointCC.js.map +1 -0
- package/build/cc/IndicatorCC.d.ts +88 -0
- package/build/cc/IndicatorCC.d.ts.map +1 -0
- package/build/cc/IndicatorCC.js +758 -0
- package/build/cc/IndicatorCC.js.map +1 -0
- package/build/cc/IrrigationCC.d.ts +278 -0
- package/build/cc/IrrigationCC.d.ts.map +1 -0
- package/build/cc/IrrigationCC.js +2062 -0
- package/build/cc/IrrigationCC.js.map +1 -0
- package/build/cc/LanguageCC.d.ts +41 -0
- package/build/cc/LanguageCC.d.ts.map +1 -0
- package/build/cc/LanguageCC.js +220 -0
- package/build/cc/LanguageCC.js.map +1 -0
- package/build/cc/LockCC.d.ts +41 -0
- package/build/cc/LockCC.d.ts.map +1 -0
- package/build/cc/LockCC.js +185 -0
- package/build/cc/LockCC.js.map +1 -0
- package/build/cc/ManufacturerProprietaryCC.d.ts +31 -0
- package/build/cc/ManufacturerProprietaryCC.d.ts.map +1 -0
- package/build/cc/ManufacturerProprietaryCC.js +275 -0
- package/build/cc/ManufacturerProprietaryCC.js.map +1 -0
- package/build/cc/ManufacturerSpecificCC.d.ts +59 -0
- package/build/cc/ManufacturerSpecificCC.d.ts.map +1 -0
- package/build/cc/ManufacturerSpecificCC.js +285 -0
- package/build/cc/ManufacturerSpecificCC.js.map +1 -0
- package/build/cc/MeterCC.d.ts +100 -0
- package/build/cc/MeterCC.d.ts.map +1 -0
- package/build/cc/MeterCC.js +820 -0
- package/build/cc/MeterCC.js.map +1 -0
- package/build/cc/MultiChannelAssociationCC.d.ts +127 -0
- package/build/cc/MultiChannelAssociationCC.d.ts.map +1 -0
- package/build/cc/MultiChannelAssociationCC.js +883 -0
- package/build/cc/MultiChannelAssociationCC.js.map +1 -0
- package/build/cc/MultiChannelCC.d.ts +164 -0
- package/build/cc/MultiChannelCC.d.ts.map +1 -0
- package/build/cc/MultiChannelCC.js +1004 -0
- package/build/cc/MultiChannelCC.js.map +1 -0
- package/build/cc/MultiCommandCC.d.ts +28 -0
- package/build/cc/MultiCommandCC.d.ts.map +1 -0
- package/build/cc/MultiCommandCC.js +137 -0
- package/build/cc/MultiCommandCC.js.map +1 -0
- package/build/cc/MultilevelSensorCC.d.ts +83 -0
- package/build/cc/MultilevelSensorCC.d.ts.map +1 -0
- package/build/cc/MultilevelSensorCC.js +633 -0
- package/build/cc/MultilevelSensorCC.js.map +1 -0
- package/build/cc/MultilevelSwitchCC.d.ts +86 -0
- package/build/cc/MultilevelSwitchCC.d.ts.map +1 -0
- package/build/cc/MultilevelSwitchCC.js +774 -0
- package/build/cc/MultilevelSwitchCC.js.map +1 -0
- package/build/cc/NoOperationCC.d.ts +17 -0
- package/build/cc/NoOperationCC.d.ts.map +1 -0
- package/build/cc/NoOperationCC.js +50 -0
- package/build/cc/NoOperationCC.js.map +1 -0
- package/build/cc/NodeNamingCC.d.ts +57 -0
- package/build/cc/NodeNamingCC.d.ts.map +1 -0
- package/build/cc/NodeNamingCC.js +313 -0
- package/build/cc/NodeNamingCC.js.map +1 -0
- package/build/cc/NotificationCC.d.ts +127 -0
- package/build/cc/NotificationCC.d.ts.map +1 -0
- package/build/cc/NotificationCC.js +1193 -0
- package/build/cc/NotificationCC.js.map +1 -0
- package/build/cc/PowerlevelCC.d.ts +63 -0
- package/build/cc/PowerlevelCC.d.ts.map +1 -0
- package/build/cc/PowerlevelCC.js +262 -0
- package/build/cc/PowerlevelCC.js.map +1 -0
- package/build/cc/ProtectionCC.d.ts +94 -0
- package/build/cc/ProtectionCC.d.ts.map +1 -0
- package/build/cc/ProtectionCC.js +630 -0
- package/build/cc/ProtectionCC.js.map +1 -0
- package/build/cc/SceneActivationCC.d.ts +34 -0
- package/build/cc/SceneActivationCC.d.ts.map +1 -0
- package/build/cc/SceneActivationCC.js +170 -0
- package/build/cc/SceneActivationCC.js.map +1 -0
- package/build/cc/SceneActuatorConfigurationCC.d.ts +52 -0
- package/build/cc/SceneActuatorConfigurationCC.d.ts.map +1 -0
- package/build/cc/SceneActuatorConfigurationCC.js +368 -0
- package/build/cc/SceneActuatorConfigurationCC.js.map +1 -0
- package/build/cc/SceneControllerConfigurationCC.d.ts +61 -0
- package/build/cc/SceneControllerConfigurationCC.d.ts.map +1 -0
- package/build/cc/SceneControllerConfigurationCC.js +444 -0
- package/build/cc/SceneControllerConfigurationCC.js.map +1 -0
- package/build/cc/Security2CC.d.ts +213 -0
- package/build/cc/Security2CC.d.ts.map +1 -0
- package/build/cc/Security2CC.js +1124 -0
- package/build/cc/Security2CC.js.map +1 -0
- package/build/cc/SecurityCC.d.ts +109 -0
- package/build/cc/SecurityCC.d.ts.map +1 -0
- package/build/cc/SecurityCC.js +609 -0
- package/build/cc/SecurityCC.js.map +1 -0
- package/build/cc/SoundSwitchCC.d.ts +87 -0
- package/build/cc/SoundSwitchCC.d.ts.map +1 -0
- package/build/cc/SoundSwitchCC.js +548 -0
- package/build/cc/SoundSwitchCC.js.map +1 -0
- package/build/cc/SupervisionCC.d.ts +63 -0
- package/build/cc/SupervisionCC.d.ts.map +1 -0
- package/build/cc/SupervisionCC.js +239 -0
- package/build/cc/SupervisionCC.js.map +1 -0
- package/build/cc/ThermostatFanModeCC.d.ts +53 -0
- package/build/cc/ThermostatFanModeCC.d.ts.map +1 -0
- package/build/cc/ThermostatFanModeCC.js +359 -0
- package/build/cc/ThermostatFanModeCC.js.map +1 -0
- package/build/cc/ThermostatFanStateCC.d.ts +24 -0
- package/build/cc/ThermostatFanStateCC.d.ts.map +1 -0
- package/build/cc/ThermostatFanStateCC.js +131 -0
- package/build/cc/ThermostatFanStateCC.js.map +1 -0
- package/build/cc/ThermostatModeCC.d.ts +58 -0
- package/build/cc/ThermostatModeCC.d.ts.map +1 -0
- package/build/cc/ThermostatModeCC.js +370 -0
- package/build/cc/ThermostatModeCC.js.map +1 -0
- package/build/cc/ThermostatOperatingStateCC.d.ts +24 -0
- package/build/cc/ThermostatOperatingStateCC.d.ts.map +1 -0
- package/build/cc/ThermostatOperatingStateCC.js +127 -0
- package/build/cc/ThermostatOperatingStateCC.js.map +1 -0
- package/build/cc/ThermostatSetbackCC.d.ts +42 -0
- package/build/cc/ThermostatSetbackCC.d.ts.map +1 -0
- package/build/cc/ThermostatSetbackCC.js +237 -0
- package/build/cc/ThermostatSetbackCC.js.map +1 -0
- package/build/cc/ThermostatSetpointCC.d.ts +98 -0
- package/build/cc/ThermostatSetpointCC.d.ts.map +1 -0
- package/build/cc/ThermostatSetpointCC.js +707 -0
- package/build/cc/ThermostatSetpointCC.js.map +1 -0
- package/build/cc/TimeCC.d.ts +78 -0
- package/build/cc/TimeCC.d.ts.map +1 -0
- package/build/cc/TimeCC.js +373 -0
- package/build/cc/TimeCC.js.map +1 -0
- package/build/cc/TimeParametersCC.d.ts +40 -0
- package/build/cc/TimeParametersCC.d.ts.map +1 -0
- package/build/cc/TimeParametersCC.js +275 -0
- package/build/cc/TimeParametersCC.js.map +1 -0
- package/build/cc/TransportServiceCC.d.ts +101 -0
- package/build/cc/TransportServiceCC.d.ts.map +1 -0
- package/build/cc/TransportServiceCC.js +404 -0
- package/build/cc/TransportServiceCC.js.map +1 -0
- package/build/cc/UserCodeCC.d.ts +219 -0
- package/build/cc/UserCodeCC.d.ts.map +1 -0
- package/build/cc/UserCodeCC.js +1526 -0
- package/build/cc/UserCodeCC.js.map +1 -0
- package/build/cc/VersionCC.d.ts +91 -0
- package/build/cc/VersionCC.d.ts.map +1 -0
- package/build/cc/VersionCC.js +654 -0
- package/build/cc/VersionCC.js.map +1 -0
- package/build/cc/WakeUpCC.d.ts +67 -0
- package/build/cc/WakeUpCC.d.ts.map +1 -0
- package/build/cc/WakeUpCC.js +425 -0
- package/build/cc/WakeUpCC.js.map +1 -0
- package/build/cc/ZWavePlusCC.d.ts +40 -0
- package/build/cc/ZWavePlusCC.d.ts.map +1 -0
- package/build/cc/ZWavePlusCC.js +269 -0
- package/build/cc/ZWavePlusCC.js.map +1 -0
- package/build/cc/index.d.ts +64 -0
- package/build/cc/index.d.ts.map +1 -0
- package/build/cc/index.js +496 -0
- package/build/cc/index.js.map +1 -0
- package/build/cc/manufacturerProprietary/FibaroCC.d.ts +62 -0
- package/build/cc/manufacturerProprietary/FibaroCC.d.ts.map +1 -0
- package/build/cc/manufacturerProprietary/FibaroCC.js +247 -0
- package/build/cc/manufacturerProprietary/FibaroCC.js.map +1 -0
- package/build/index.d.ts +11 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +48 -0
- package/build/index.js.map +1 -0
- package/build/index_safe.d.ts +4 -0
- package/build/index_safe.d.ts.map +1 -0
- package/build/index_safe.js +30 -0
- package/build/index_safe.js.map +1 -0
- package/build/lib/API.d.ts +176 -0
- package/build/lib/API.d.ts.map +1 -0
- package/build/lib/API.js +325 -0
- package/build/lib/API.js.map +1 -0
- package/build/lib/CommandClass.d.ts +341 -0
- package/build/lib/CommandClass.d.ts.map +1 -0
- package/build/lib/CommandClass.js +1088 -0
- package/build/lib/CommandClass.js.map +1 -0
- package/build/lib/EncapsulatingCommandClass.d.ts +35 -0
- package/build/lib/EncapsulatingCommandClass.d.ts.map +1 -0
- package/build/lib/EncapsulatingCommandClass.js +53 -0
- package/build/lib/EncapsulatingCommandClass.js.map +1 -0
- package/build/lib/ICommandClassContainer.d.ts +9 -0
- package/build/lib/ICommandClassContainer.d.ts.map +1 -0
- package/build/lib/ICommandClassContainer.js +12 -0
- package/build/lib/ICommandClassContainer.js.map +1 -0
- package/build/lib/NotificationEventPayload.d.ts +11 -0
- package/build/lib/NotificationEventPayload.d.ts.map +1 -0
- package/build/lib/NotificationEventPayload.js +11 -0
- package/build/lib/NotificationEventPayload.js.map +1 -0
- package/build/lib/Security2/Extension.d.ts +87 -0
- package/build/lib/Security2/Extension.d.ts.map +1 -0
- package/build/lib/Security2/Extension.js +235 -0
- package/build/lib/Security2/Extension.js.map +1 -0
- package/build/lib/Security2/shared.d.ts +31 -0
- package/build/lib/Security2/shared.d.ts.map +1 -0
- package/build/lib/Security2/shared.js +37 -0
- package/build/lib/Security2/shared.js.map +1 -0
- package/build/lib/_Types.d.ts +1446 -0
- package/build/lib/_Types.d.ts.map +1 -0
- package/build/lib/_Types.js +1334 -0
- package/build/lib/_Types.js.map +1 -0
- package/build/lib/serializers.d.ts +24 -0
- package/build/lib/serializers.d.ts.map +1 -0
- package/build/lib/serializers.js +66 -0
- package/build/lib/serializers.js.map +1 -0
- package/build/lib/utils.d.ts +13 -0
- package/build/lib/utils.d.ts.map +1 -0
- package/build/lib/utils.js +675 -0
- package/build/lib/utils.js.map +1 -0
- package/package.json +77 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { CommandClasses, Duration, IZWaveEndpoint, Maybe, MessageOrCCLogEntry, ValueID } from "@zwave-js/core/safe";
|
|
3
|
+
import type { ZWaveApplicationHost, ZWaveHost } from "@zwave-js/host/safe";
|
|
4
|
+
import { CCAPI, PollValueImplementation, POLL_VALUE, SetValueImplementation, SET_VALUE } from "../lib/API";
|
|
5
|
+
import { CommandClass, type CCCommandOptions, type CommandClassDeserializationOptions } from "../lib/CommandClass";
|
|
6
|
+
import { SceneControllerConfigurationCommand } from "../lib/_Types";
|
|
7
|
+
export declare function getSceneIdValueID(endpoint: number | undefined, groupId: number): ValueID;
|
|
8
|
+
export declare function getDimmingDurationValueID(endpoint: number | undefined, groupId: number): ValueID;
|
|
9
|
+
export declare class SceneControllerConfigurationCCAPI extends CCAPI {
|
|
10
|
+
supportsCommand(cmd: SceneControllerConfigurationCommand): Maybe<boolean>;
|
|
11
|
+
protected [SET_VALUE]: SetValueImplementation;
|
|
12
|
+
protected [POLL_VALUE]: PollValueImplementation;
|
|
13
|
+
disable(groupId: number): Promise<void>;
|
|
14
|
+
set(groupId: number, sceneId: number, dimmingDuration?: Duration | string): Promise<void>;
|
|
15
|
+
getLastActivated(): Promise<Pick<SceneControllerConfigurationCCReport, "groupId" | "sceneId" | "dimmingDuration"> | undefined>;
|
|
16
|
+
get(groupId: number): Promise<Pick<SceneControllerConfigurationCCReport, "sceneId" | "dimmingDuration"> | undefined>;
|
|
17
|
+
}
|
|
18
|
+
export declare class SceneControllerConfigurationCC extends CommandClass {
|
|
19
|
+
ccCommand: SceneControllerConfigurationCommand;
|
|
20
|
+
determineRequiredCCInterviews(): readonly CommandClasses[];
|
|
21
|
+
interview(applHost: ZWaveApplicationHost): Promise<void>;
|
|
22
|
+
refreshValues(applHost: ZWaveApplicationHost): Promise<void>;
|
|
23
|
+
/**
|
|
24
|
+
* Returns the number of association groups reported by the node.
|
|
25
|
+
* This only works AFTER the node has been interviewed by this CC
|
|
26
|
+
* or the AssociationCC.
|
|
27
|
+
*/
|
|
28
|
+
static getGroupCountCached(applHost: ZWaveApplicationHost, endpoint: IZWaveEndpoint): number;
|
|
29
|
+
}
|
|
30
|
+
interface SceneControllerConfigurationCCSetOptions extends CCCommandOptions {
|
|
31
|
+
groupId: number;
|
|
32
|
+
sceneId: number;
|
|
33
|
+
dimmingDuration?: Duration | string;
|
|
34
|
+
}
|
|
35
|
+
export declare class SceneControllerConfigurationCCSet extends SceneControllerConfigurationCC {
|
|
36
|
+
constructor(host: ZWaveHost, options: CommandClassDeserializationOptions | SceneControllerConfigurationCCSetOptions);
|
|
37
|
+
groupId: number;
|
|
38
|
+
sceneId: number;
|
|
39
|
+
dimmingDuration: Duration;
|
|
40
|
+
serialize(): Buffer;
|
|
41
|
+
toLogEntry(applHost: ZWaveApplicationHost): MessageOrCCLogEntry;
|
|
42
|
+
}
|
|
43
|
+
export declare class SceneControllerConfigurationCCReport extends SceneControllerConfigurationCC {
|
|
44
|
+
constructor(host: ZWaveHost, options: CommandClassDeserializationOptions);
|
|
45
|
+
readonly groupId: number;
|
|
46
|
+
readonly sceneId: number;
|
|
47
|
+
readonly dimmingDuration: Duration;
|
|
48
|
+
persistValues(applHost: ZWaveApplicationHost): boolean;
|
|
49
|
+
toLogEntry(applHost: ZWaveApplicationHost): MessageOrCCLogEntry;
|
|
50
|
+
}
|
|
51
|
+
interface SceneControllerConfigurationCCGetOptions extends CCCommandOptions {
|
|
52
|
+
groupId: number;
|
|
53
|
+
}
|
|
54
|
+
export declare class SceneControllerConfigurationCCGet extends SceneControllerConfigurationCC {
|
|
55
|
+
constructor(host: ZWaveHost, options: CommandClassDeserializationOptions | SceneControllerConfigurationCCGetOptions);
|
|
56
|
+
groupId: number;
|
|
57
|
+
serialize(): Buffer;
|
|
58
|
+
toLogEntry(applHost: ZWaveApplicationHost): MessageOrCCLogEntry;
|
|
59
|
+
}
|
|
60
|
+
export {};
|
|
61
|
+
//# sourceMappingURL=SceneControllerConfigurationCC.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SceneControllerConfigurationCC.d.ts","sourceRoot":"","sources":["../../src/cc/SceneControllerConfigurationCC.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,444 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var _a, _b;
|
|
9
|
+
var SceneControllerConfigurationCC_1;
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.SceneControllerConfigurationCCGet = exports.SceneControllerConfigurationCCReport = exports.SceneControllerConfigurationCCSet = exports.SceneControllerConfigurationCC = exports.SceneControllerConfigurationCCAPI = exports.getDimmingDurationValueID = exports.getSceneIdValueID = void 0;
|
|
12
|
+
function __assertType(argName, typeName, boundHasError) {
|
|
13
|
+
const { ZWaveError, ZWaveErrorCodes } = require("@zwave-js/core");
|
|
14
|
+
if (boundHasError()) {
|
|
15
|
+
throw new ZWaveError(typeName ? `${argName} is not a ${typeName}` : `${argName} has the wrong type`, ZWaveErrorCodes.Argument_Invalid);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
const __assertType__number = $o => {
|
|
19
|
+
function _number($o) {
|
|
20
|
+
return typeof $o !== "number" ? {} : null;
|
|
21
|
+
}
|
|
22
|
+
return _number($o);
|
|
23
|
+
};
|
|
24
|
+
const __assertType__optional_su__string__2_eu = $o => {
|
|
25
|
+
function _string($o) {
|
|
26
|
+
return typeof $o !== "string" ? {} : null;
|
|
27
|
+
}
|
|
28
|
+
function _2($o) {
|
|
29
|
+
return !($o instanceof require("@zwave-js/core/safe").Duration) ? {} : null;
|
|
30
|
+
}
|
|
31
|
+
function su__string__2_eu($o) {
|
|
32
|
+
const conditions = [_string, _2];
|
|
33
|
+
for (const condition of conditions) {
|
|
34
|
+
const error = condition($o);
|
|
35
|
+
if (!error)
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
return {};
|
|
39
|
+
}
|
|
40
|
+
function optional_su__string__2_eu($o) {
|
|
41
|
+
if ($o !== undefined) {
|
|
42
|
+
const error = su__string__2_eu($o);
|
|
43
|
+
if (error)
|
|
44
|
+
return error;
|
|
45
|
+
}
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
return optional_su__string__2_eu($o);
|
|
49
|
+
};
|
|
50
|
+
const safe_1 = require("@zwave-js/core/safe");
|
|
51
|
+
const safe_2 = require("@zwave-js/shared/safe");
|
|
52
|
+
const API_1 = require("../lib/API");
|
|
53
|
+
const CommandClass_1 = require("../lib/CommandClass");
|
|
54
|
+
const _Types_1 = require("../lib/_Types");
|
|
55
|
+
const AssociationCC_1 = require("./AssociationCC");
|
|
56
|
+
function getSceneIdValueID(endpoint, groupId) {
|
|
57
|
+
return {
|
|
58
|
+
commandClass: safe_1.CommandClasses["Scene Controller Configuration"],
|
|
59
|
+
endpoint,
|
|
60
|
+
property: "sceneId",
|
|
61
|
+
propertyKey: groupId,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
exports.getSceneIdValueID = getSceneIdValueID;
|
|
65
|
+
function getDimmingDurationValueID(endpoint, groupId) {
|
|
66
|
+
return {
|
|
67
|
+
commandClass: safe_1.CommandClasses["Scene Controller Configuration"],
|
|
68
|
+
endpoint,
|
|
69
|
+
property: "dimmingDuration",
|
|
70
|
+
propertyKey: groupId,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
exports.getDimmingDurationValueID = getDimmingDurationValueID;
|
|
74
|
+
function setSceneConfigurationMetadata(applHost, groupId) {
|
|
75
|
+
const valueDB = this.getValueDB(applHost);
|
|
76
|
+
const sceneIdValueId = getSceneIdValueID(this.endpointIndex, groupId);
|
|
77
|
+
const dimmingDurationValueId = getDimmingDurationValueID(this.endpointIndex, groupId);
|
|
78
|
+
if (!valueDB.hasMetadata(sceneIdValueId)) {
|
|
79
|
+
valueDB.setMetadata(sceneIdValueId, {
|
|
80
|
+
...safe_1.ValueMetadata.UInt8,
|
|
81
|
+
label: `Associated Scene ID (${groupId})`,
|
|
82
|
+
valueChangeOptions: ["transitionDuration"],
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
if (!valueDB.hasMetadata(dimmingDurationValueId)) {
|
|
86
|
+
valueDB.setMetadata(dimmingDurationValueId, {
|
|
87
|
+
...safe_1.ValueMetadata.Duration,
|
|
88
|
+
label: `Dimming duration (${groupId})`,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
function persistSceneConfig(applHost, groupId, sceneId, dimmingDuration) {
|
|
93
|
+
const valueDB = this.getValueDB(applHost);
|
|
94
|
+
const sceneIdValueId = getSceneIdValueID(this.endpointIndex, groupId);
|
|
95
|
+
const dimmingDurationValueId = getDimmingDurationValueID(this.endpointIndex, groupId);
|
|
96
|
+
if (!valueDB.hasMetadata(sceneIdValueId) ||
|
|
97
|
+
!valueDB.hasMetadata(dimmingDurationValueId)) {
|
|
98
|
+
setSceneConfigurationMetadata.call(this, applHost, groupId);
|
|
99
|
+
}
|
|
100
|
+
valueDB.setValue(sceneIdValueId, sceneId);
|
|
101
|
+
valueDB.setValue(dimmingDurationValueId, dimmingDuration);
|
|
102
|
+
return true;
|
|
103
|
+
}
|
|
104
|
+
let SceneControllerConfigurationCCAPI = class SceneControllerConfigurationCCAPI extends API_1.CCAPI {
|
|
105
|
+
constructor() {
|
|
106
|
+
super(...arguments);
|
|
107
|
+
this[_a] = async ({ property, propertyKey }, value, options) => {
|
|
108
|
+
var _c, _d, _e;
|
|
109
|
+
if (propertyKey == undefined) {
|
|
110
|
+
(0, API_1.throwMissingPropertyKey)(this.ccId, property);
|
|
111
|
+
}
|
|
112
|
+
else if (typeof propertyKey !== "number") {
|
|
113
|
+
(0, API_1.throwUnsupportedPropertyKey)(this.ccId, property, propertyKey);
|
|
114
|
+
}
|
|
115
|
+
if (property === "sceneId") {
|
|
116
|
+
if (typeof value !== "number") {
|
|
117
|
+
(0, API_1.throwWrongValueType)(this.ccId, property, "number", typeof value);
|
|
118
|
+
}
|
|
119
|
+
if (value === 0) {
|
|
120
|
+
// Disable Group ID / Scene ID
|
|
121
|
+
await this.disable(propertyKey);
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
// We need to set the dimming duration along with the scene ID
|
|
125
|
+
// Dimming duration is chosen with the following precedence:
|
|
126
|
+
// 1. options.transitionDuration
|
|
127
|
+
// 2. current stored value
|
|
128
|
+
// 3. default value
|
|
129
|
+
const dimmingDuration = (_e = (_c = safe_1.Duration.from(options === null || options === void 0 ? void 0 : options.transitionDuration)) !== null && _c !== void 0 ? _c : (_d = this.tryGetValueDB()) === null || _d === void 0 ? void 0 : _d.getValue(getDimmingDurationValueID(this.endpoint.index, propertyKey))) !== null && _e !== void 0 ? _e : new safe_1.Duration(0, "default");
|
|
130
|
+
await this.set(propertyKey, value, dimmingDuration);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
else if (property === "dimmingDuration") {
|
|
134
|
+
if (typeof value !== "string" && !(value instanceof safe_1.Duration)) {
|
|
135
|
+
(0, API_1.throwWrongValueType)(this.ccId, property, "duration", typeof value);
|
|
136
|
+
}
|
|
137
|
+
const dimmingDuration = safe_1.Duration.from(value);
|
|
138
|
+
if (dimmingDuration == undefined) {
|
|
139
|
+
throw new safe_1.ZWaveError(`${(0, safe_1.getCCName)(this.ccId)}: "${property}" could not be set. ${JSON.stringify(value)} is not a valid duration.`, safe_1.ZWaveErrorCodes.Argument_Invalid);
|
|
140
|
+
}
|
|
141
|
+
const valueDB = this.tryGetValueDB();
|
|
142
|
+
const sceneId = valueDB === null || valueDB === void 0 ? void 0 : valueDB.getValue(getSceneIdValueID(this.endpoint.index, propertyKey));
|
|
143
|
+
if (sceneId == undefined || sceneId === 0) {
|
|
144
|
+
if (valueDB) {
|
|
145
|
+
// Can't actually send dimmingDuration without valid sceneId
|
|
146
|
+
// So we save it in the valueDB without sending it to the node
|
|
147
|
+
const dimmingDurationValueId = getDimmingDurationValueID(this.endpoint.index, propertyKey);
|
|
148
|
+
valueDB.setValue(dimmingDurationValueId, dimmingDuration);
|
|
149
|
+
}
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
await this.set(propertyKey, sceneId, dimmingDuration);
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
(0, API_1.throwUnsupportedProperty)(this.ccId, property);
|
|
156
|
+
}
|
|
157
|
+
};
|
|
158
|
+
this[_b] = async ({ property, propertyKey, }) => {
|
|
159
|
+
var _c;
|
|
160
|
+
switch (property) {
|
|
161
|
+
case "sceneId":
|
|
162
|
+
case "dimmingDuration": {
|
|
163
|
+
if (propertyKey == undefined) {
|
|
164
|
+
(0, API_1.throwMissingPropertyKey)(this.ccId, property);
|
|
165
|
+
}
|
|
166
|
+
else if (typeof propertyKey !== "number") {
|
|
167
|
+
(0, API_1.throwUnsupportedPropertyKey)(this.ccId, property, propertyKey);
|
|
168
|
+
}
|
|
169
|
+
return (_c = (await this.get(propertyKey))) === null || _c === void 0 ? void 0 : _c[property];
|
|
170
|
+
}
|
|
171
|
+
default:
|
|
172
|
+
(0, API_1.throwUnsupportedProperty)(this.ccId, property);
|
|
173
|
+
}
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
supportsCommand(cmd) {
|
|
177
|
+
switch (cmd) {
|
|
178
|
+
case _Types_1.SceneControllerConfigurationCommand.Get:
|
|
179
|
+
return this.isSinglecast();
|
|
180
|
+
case _Types_1.SceneControllerConfigurationCommand.Set:
|
|
181
|
+
return true; // This is mandatory
|
|
182
|
+
}
|
|
183
|
+
return super.supportsCommand(cmd);
|
|
184
|
+
}
|
|
185
|
+
async disable(groupId) {
|
|
186
|
+
__assertType("groupId", "number", __assertType__number.bind(void 0, groupId));
|
|
187
|
+
this.assertSupportsCommand(_Types_1.SceneControllerConfigurationCommand, _Types_1.SceneControllerConfigurationCommand.Set);
|
|
188
|
+
return this.set(groupId, 0, new safe_1.Duration(0, "seconds"));
|
|
189
|
+
}
|
|
190
|
+
async set(groupId, sceneId, dimmingDuration) {
|
|
191
|
+
__assertType("groupId", "number", __assertType__number.bind(void 0, groupId));
|
|
192
|
+
__assertType("sceneId", "number", __assertType__number.bind(void 0, sceneId));
|
|
193
|
+
__assertType("dimmingDuration", undefined, __assertType__optional_su__string__2_eu.bind(void 0, dimmingDuration));
|
|
194
|
+
this.assertSupportsCommand(_Types_1.SceneControllerConfigurationCommand, _Types_1.SceneControllerConfigurationCommand.Set);
|
|
195
|
+
if (!this.endpoint.virtual) {
|
|
196
|
+
const groupCount = SceneControllerConfigurationCC.getGroupCountCached(this.applHost, this.endpoint);
|
|
197
|
+
// The client SHOULD NOT specify group 1 (the life-line group).
|
|
198
|
+
// We don't block it here, because the specs don't forbid it,
|
|
199
|
+
// and it may be needed for some devices.
|
|
200
|
+
if (groupId < 1 || groupId > groupCount) {
|
|
201
|
+
throw new safe_1.ZWaveError(`${this.constructor.name}: The group ID must be between 1 and the number of supported groups ${groupCount}.`, safe_1.ZWaveErrorCodes.Argument_Invalid);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
else if (groupId < 1) {
|
|
205
|
+
throw new safe_1.ZWaveError(`The group ID must be greater than 0.`, safe_1.ZWaveErrorCodes.Argument_Invalid);
|
|
206
|
+
}
|
|
207
|
+
const cc = new SceneControllerConfigurationCCSet(this.applHost, {
|
|
208
|
+
nodeId: this.endpoint.nodeId,
|
|
209
|
+
endpoint: this.endpoint.index,
|
|
210
|
+
groupId,
|
|
211
|
+
sceneId,
|
|
212
|
+
dimmingDuration,
|
|
213
|
+
});
|
|
214
|
+
await this.applHost.sendCommand(cc, this.commandOptions);
|
|
215
|
+
}
|
|
216
|
+
async getLastActivated() {
|
|
217
|
+
this.assertSupportsCommand(_Types_1.SceneControllerConfigurationCommand, _Types_1.SceneControllerConfigurationCommand.Get);
|
|
218
|
+
const cc = new SceneControllerConfigurationCCGet(this.applHost, {
|
|
219
|
+
nodeId: this.endpoint.nodeId,
|
|
220
|
+
endpoint: this.endpoint.index,
|
|
221
|
+
groupId: 0,
|
|
222
|
+
});
|
|
223
|
+
const response = await this.applHost.sendCommand(cc, this.commandOptions);
|
|
224
|
+
// Return value includes "groupId", because
|
|
225
|
+
// the returned report will include the actual groupId of the
|
|
226
|
+
// last activated groupId / sceneId
|
|
227
|
+
if (response) {
|
|
228
|
+
return (0, safe_2.pick)(response, ["groupId", "sceneId", "dimmingDuration"]);
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
async get(groupId) {
|
|
232
|
+
__assertType("groupId", "number", __assertType__number.bind(void 0, groupId));
|
|
233
|
+
this.assertSupportsCommand(_Types_1.SceneControllerConfigurationCommand, _Types_1.SceneControllerConfigurationCommand.Get);
|
|
234
|
+
if (groupId === 0) {
|
|
235
|
+
throw new safe_1.ZWaveError(`Invalid group ID 0. To get the last activated group / scene, use getLastActivated() instead.`, safe_1.ZWaveErrorCodes.Argument_Invalid);
|
|
236
|
+
}
|
|
237
|
+
else if (groupId < 0) {
|
|
238
|
+
throw new safe_1.ZWaveError(`The group ID must be greater than 0.`, safe_1.ZWaveErrorCodes.Argument_Invalid);
|
|
239
|
+
}
|
|
240
|
+
const cc = new SceneControllerConfigurationCCGet(this.applHost, {
|
|
241
|
+
nodeId: this.endpoint.nodeId,
|
|
242
|
+
endpoint: this.endpoint.index,
|
|
243
|
+
groupId,
|
|
244
|
+
});
|
|
245
|
+
const response = await this.applHost.sendCommand(cc, this.commandOptions);
|
|
246
|
+
// Since groupId is not allowed to be 0, only Reports with
|
|
247
|
+
// groupId equal to the requested groupId will be accepted,
|
|
248
|
+
// so we can omit groupId from the return.
|
|
249
|
+
if (response) {
|
|
250
|
+
return (0, safe_2.pick)(response, ["sceneId", "dimmingDuration"]);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
};
|
|
254
|
+
_a = API_1.SET_VALUE, _b = API_1.POLL_VALUE;
|
|
255
|
+
SceneControllerConfigurationCCAPI = __decorate([
|
|
256
|
+
(0, CommandClass_1.API)(safe_1.CommandClasses["Scene Controller Configuration"])
|
|
257
|
+
], SceneControllerConfigurationCCAPI);
|
|
258
|
+
exports.SceneControllerConfigurationCCAPI = SceneControllerConfigurationCCAPI;
|
|
259
|
+
let SceneControllerConfigurationCC = SceneControllerConfigurationCC_1 = class SceneControllerConfigurationCC extends CommandClass_1.CommandClass {
|
|
260
|
+
determineRequiredCCInterviews() {
|
|
261
|
+
// AssociationCC is required and MUST be interviewed
|
|
262
|
+
// before SceneControllerConfigurationCC to supply groupCount
|
|
263
|
+
return [
|
|
264
|
+
...super.determineRequiredCCInterviews(),
|
|
265
|
+
safe_1.CommandClasses.Association,
|
|
266
|
+
];
|
|
267
|
+
}
|
|
268
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
269
|
+
async interview(applHost) {
|
|
270
|
+
const node = this.getNode(applHost);
|
|
271
|
+
const endpoint = this.getEndpoint(applHost);
|
|
272
|
+
applHost.controllerLog.logNode(node.id, {
|
|
273
|
+
endpoint: this.endpointIndex,
|
|
274
|
+
message: `Interviewing ${this.ccName}...`,
|
|
275
|
+
direction: "none",
|
|
276
|
+
});
|
|
277
|
+
const groupCount = SceneControllerConfigurationCC_1.getGroupCountCached(applHost, endpoint);
|
|
278
|
+
if (groupCount === 0) {
|
|
279
|
+
applHost.controllerLog.logNode(node.id, {
|
|
280
|
+
endpoint: this.endpointIndex,
|
|
281
|
+
message: `skipping Scene Controller Configuration interview because Association group count is unknown`,
|
|
282
|
+
direction: "none",
|
|
283
|
+
level: "warn",
|
|
284
|
+
});
|
|
285
|
+
return;
|
|
286
|
+
}
|
|
287
|
+
// Create metadata for each scene, but don't query their actual configuration
|
|
288
|
+
// since some devices only support setting scenes
|
|
289
|
+
for (let groupId = 1; groupId <= groupCount; groupId++) {
|
|
290
|
+
setSceneConfigurationMetadata.call(this, applHost, groupId);
|
|
291
|
+
}
|
|
292
|
+
// Remember that the interview is complete
|
|
293
|
+
this.setInterviewComplete(applHost, true);
|
|
294
|
+
}
|
|
295
|
+
async refreshValues(applHost) {
|
|
296
|
+
const node = this.getNode(applHost);
|
|
297
|
+
const endpoint = this.getEndpoint(applHost);
|
|
298
|
+
const api = API_1.CCAPI.create(safe_1.CommandClasses["Scene Controller Configuration"], applHost, endpoint).withOptions({
|
|
299
|
+
priority: safe_1.MessagePriority.NodeQuery,
|
|
300
|
+
});
|
|
301
|
+
const groupCount = SceneControllerConfigurationCC_1.getGroupCountCached(applHost, endpoint);
|
|
302
|
+
applHost.controllerLog.logNode(node.id, {
|
|
303
|
+
message: "querying all scene controller configurations...",
|
|
304
|
+
direction: "outbound",
|
|
305
|
+
});
|
|
306
|
+
for (let groupId = 1; groupId <= groupCount; groupId++) {
|
|
307
|
+
applHost.controllerLog.logNode(node.id, {
|
|
308
|
+
endpoint: this.endpointIndex,
|
|
309
|
+
message: `querying scene configuration for group #${groupId}...`,
|
|
310
|
+
direction: "outbound",
|
|
311
|
+
});
|
|
312
|
+
const group = await api.get(groupId);
|
|
313
|
+
if (group != undefined) {
|
|
314
|
+
const logMessage = `received scene configuration for group #${groupId}:
|
|
315
|
+
scene ID: ${group.sceneId}
|
|
316
|
+
dimming duration: ${group.dimmingDuration.toString()}`;
|
|
317
|
+
applHost.controllerLog.logNode(node.id, {
|
|
318
|
+
endpoint: this.endpointIndex,
|
|
319
|
+
message: logMessage,
|
|
320
|
+
direction: "inbound",
|
|
321
|
+
});
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* Returns the number of association groups reported by the node.
|
|
327
|
+
* This only works AFTER the node has been interviewed by this CC
|
|
328
|
+
* or the AssociationCC.
|
|
329
|
+
*/
|
|
330
|
+
static getGroupCountCached(applHost, endpoint) {
|
|
331
|
+
var _c, _d, _e, _f, _g;
|
|
332
|
+
return ((_g = (_f = (_e = (_d = (_c = applHost.getDeviceConfig) === null || _c === void 0 ? void 0 : _c.call(applHost, endpoint.nodeId)) === null || _d === void 0 ? void 0 : _d.compat) === null || _e === void 0 ? void 0 : _e.forceSceneControllerGroupCount) !== null && _f !== void 0 ? _f : AssociationCC_1.AssociationCC.getGroupCountCached(applHost, endpoint)) !== null && _g !== void 0 ? _g : 0);
|
|
333
|
+
}
|
|
334
|
+
};
|
|
335
|
+
SceneControllerConfigurationCC = SceneControllerConfigurationCC_1 = __decorate([
|
|
336
|
+
(0, CommandClass_1.commandClass)(safe_1.CommandClasses["Scene Controller Configuration"]),
|
|
337
|
+
(0, CommandClass_1.implementedVersion)(1)
|
|
338
|
+
], SceneControllerConfigurationCC);
|
|
339
|
+
exports.SceneControllerConfigurationCC = SceneControllerConfigurationCC;
|
|
340
|
+
let SceneControllerConfigurationCCSet = class SceneControllerConfigurationCCSet extends SceneControllerConfigurationCC {
|
|
341
|
+
constructor(host, options) {
|
|
342
|
+
var _c;
|
|
343
|
+
super(host, options);
|
|
344
|
+
if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
|
|
345
|
+
// TODO: Deserialize payload
|
|
346
|
+
throw new safe_1.ZWaveError(`${this.constructor.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
|
|
347
|
+
}
|
|
348
|
+
else {
|
|
349
|
+
this.groupId = options.groupId;
|
|
350
|
+
this.sceneId = options.sceneId;
|
|
351
|
+
// if dimmingDuration was missing, use default duration.
|
|
352
|
+
this.dimmingDuration =
|
|
353
|
+
(_c = safe_1.Duration.from(options.dimmingDuration)) !== null && _c !== void 0 ? _c : new safe_1.Duration(0, "default");
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
serialize() {
|
|
357
|
+
this.payload = Buffer.from([
|
|
358
|
+
this.groupId,
|
|
359
|
+
this.sceneId,
|
|
360
|
+
this.dimmingDuration.serializeSet(),
|
|
361
|
+
]);
|
|
362
|
+
return super.serialize();
|
|
363
|
+
}
|
|
364
|
+
toLogEntry(applHost) {
|
|
365
|
+
return {
|
|
366
|
+
...super.toLogEntry(applHost),
|
|
367
|
+
message: {
|
|
368
|
+
"group id": this.groupId,
|
|
369
|
+
"scene id": this.sceneId,
|
|
370
|
+
"dimming duration": this.dimmingDuration.toString(),
|
|
371
|
+
},
|
|
372
|
+
};
|
|
373
|
+
}
|
|
374
|
+
};
|
|
375
|
+
SceneControllerConfigurationCCSet = __decorate([
|
|
376
|
+
(0, CommandClass_1.CCCommand)(_Types_1.SceneControllerConfigurationCommand.Set)
|
|
377
|
+
], SceneControllerConfigurationCCSet);
|
|
378
|
+
exports.SceneControllerConfigurationCCSet = SceneControllerConfigurationCCSet;
|
|
379
|
+
let SceneControllerConfigurationCCReport = class SceneControllerConfigurationCCReport extends SceneControllerConfigurationCC {
|
|
380
|
+
constructor(host, options) {
|
|
381
|
+
var _c;
|
|
382
|
+
super(host, options);
|
|
383
|
+
(0, safe_1.validatePayload)(this.payload.length >= 3);
|
|
384
|
+
this.groupId = this.payload[0];
|
|
385
|
+
this.sceneId = this.payload[1];
|
|
386
|
+
this.dimmingDuration =
|
|
387
|
+
(_c = safe_1.Duration.parseReport(this.payload[2])) !== null && _c !== void 0 ? _c : new safe_1.Duration(0, "unknown");
|
|
388
|
+
}
|
|
389
|
+
persistValues(applHost) {
|
|
390
|
+
if (!super.persistValues(applHost))
|
|
391
|
+
return false;
|
|
392
|
+
// If groupId = 0, values are meaningless
|
|
393
|
+
if (this.groupId === 0)
|
|
394
|
+
return false;
|
|
395
|
+
return persistSceneConfig.call(this, applHost, this.groupId, this.sceneId, this.dimmingDuration);
|
|
396
|
+
}
|
|
397
|
+
toLogEntry(applHost) {
|
|
398
|
+
return {
|
|
399
|
+
...super.toLogEntry(applHost),
|
|
400
|
+
message: {
|
|
401
|
+
"group id": this.groupId,
|
|
402
|
+
"scene id": this.sceneId,
|
|
403
|
+
"dimming duration": this.dimmingDuration.toString(),
|
|
404
|
+
},
|
|
405
|
+
};
|
|
406
|
+
}
|
|
407
|
+
};
|
|
408
|
+
SceneControllerConfigurationCCReport = __decorate([
|
|
409
|
+
(0, CommandClass_1.CCCommand)(_Types_1.SceneControllerConfigurationCommand.Report)
|
|
410
|
+
], SceneControllerConfigurationCCReport);
|
|
411
|
+
exports.SceneControllerConfigurationCCReport = SceneControllerConfigurationCCReport;
|
|
412
|
+
function testResponseForSceneControllerConfigurationGet(sent, received) {
|
|
413
|
+
// We expect a Scene Controller Configuration Report that matches
|
|
414
|
+
// the requested groupId, unless groupId 0 was requested
|
|
415
|
+
return sent.groupId === 0 || received.groupId === sent.groupId;
|
|
416
|
+
}
|
|
417
|
+
let SceneControllerConfigurationCCGet = class SceneControllerConfigurationCCGet extends SceneControllerConfigurationCC {
|
|
418
|
+
constructor(host, options) {
|
|
419
|
+
super(host, options);
|
|
420
|
+
if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
|
|
421
|
+
// TODO: Deserialize payload
|
|
422
|
+
throw new safe_1.ZWaveError(`${this.constructor.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
|
|
423
|
+
}
|
|
424
|
+
else {
|
|
425
|
+
this.groupId = options.groupId;
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
serialize() {
|
|
429
|
+
this.payload = Buffer.from([this.groupId]);
|
|
430
|
+
return super.serialize();
|
|
431
|
+
}
|
|
432
|
+
toLogEntry(applHost) {
|
|
433
|
+
return {
|
|
434
|
+
...super.toLogEntry(applHost),
|
|
435
|
+
message: { "group id": this.groupId },
|
|
436
|
+
};
|
|
437
|
+
}
|
|
438
|
+
};
|
|
439
|
+
SceneControllerConfigurationCCGet = __decorate([
|
|
440
|
+
(0, CommandClass_1.CCCommand)(_Types_1.SceneControllerConfigurationCommand.Get),
|
|
441
|
+
(0, CommandClass_1.expectedCCResponse)(SceneControllerConfigurationCCReport, testResponseForSceneControllerConfigurationGet)
|
|
442
|
+
], SceneControllerConfigurationCCGet);
|
|
443
|
+
exports.SceneControllerConfigurationCCGet = SceneControllerConfigurationCCGet;
|
|
444
|
+
//# sourceMappingURL=SceneControllerConfigurationCC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SceneControllerConfigurationCC.js","sourceRoot":"","sources":["../../src/cc/SceneControllerConfigurationCC.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAa6B;AAE7B,gDAA6C;AAE7C,oCAUoB;AACpB,sDAU6B;AAC7B,0CAAoE;AACpE,mDAAgD;AAEhD,SAAgB,iBAAiB,CAChC,QAA4B,EAC5B,OAAe;IAEf,OAAO;QACN,YAAY,EAAE,qBAAc,CAAC,gCAAgC,CAAC;QAC9D,QAAQ;QACR,QAAQ,EAAE,SAAS;QACnB,WAAW,EAAE,OAAO;KACpB,CAAC;AACH,CAAC;AAVD,8CAUC;AAED,SAAgB,yBAAyB,CACxC,QAA4B,EAC5B,OAAe;IAEf,OAAO;QACN,YAAY,EAAE,qBAAc,CAAC,gCAAgC,CAAC;QAC9D,QAAQ;QACR,QAAQ,EAAE,iBAAiB;QAC3B,WAAW,EAAE,OAAO;KACpB,CAAC;AACH,CAAC;AAVD,8DAUC;AAED,SAAS,6BAA6B,CAErC,QAA8B,EAC9B,OAAe;IAEf,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACtE,MAAM,sBAAsB,GAAG,yBAAyB,CACvD,IAAI,CAAC,aAAa,EAClB,OAAO,CACP,CAAC;IAEF,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE;QACzC,OAAO,CAAC,WAAW,CAAC,cAAc,EAAE;YACnC,GAAG,oBAAa,CAAC,KAAK;YACtB,KAAK,EAAE,wBAAwB,OAAO,GAAG;YACzC,kBAAkB,EAAE,CAAC,oBAAoB,CAAC;SAC1C,CAAC,CAAC;KACH;IACD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,sBAAsB,CAAC,EAAE;QACjD,OAAO,CAAC,WAAW,CAAC,sBAAsB,EAAE;YAC3C,GAAG,oBAAa,CAAC,QAAQ;YACzB,KAAK,EAAE,qBAAqB,OAAO,GAAG;SACtC,CAAC,CAAC;KACH;AACF,CAAC;AAED,SAAS,kBAAkB,CAE1B,QAA8B,EAC9B,OAAe,EACf,OAAe,EACf,eAAyB;IAEzB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACtE,MAAM,sBAAsB,GAAG,yBAAyB,CACvD,IAAI,CAAC,aAAa,EAClB,OAAO,CACP,CAAC;IAEF,IACC,CAAC,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC;QACpC,CAAC,OAAO,CAAC,WAAW,CAAC,sBAAsB,CAAC,EAC3C;QACD,6BAA6B,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;KAC5D;IAED,OAAO,CAAC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC1C,OAAO,CAAC,QAAQ,CAAC,sBAAsB,EAAE,eAAe,CAAC,CAAC;IAE1D,OAAO,IAAI,CAAC;AACb,CAAC;AAGD,IAAa,iCAAiC,GAA9C,MAAa,iCAAkC,SAAQ,WAAK;IAA5D;;QAaW,QAAW,GAA2B,KAAK,EACpD,EAAE,QAAQ,EAAE,WAAW,EAAE,EACzB,KAAK,EACL,OAAO,EACS,EAAE;;YAClB,IAAI,WAAW,IAAI,SAAS,EAAE;gBAC7B,IAAA,6BAAuB,EAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;aAC7C;iBAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;gBAC3C,IAAA,iCAA2B,EAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;aAC9D;YACD,IAAI,QAAQ,KAAK,SAAS,EAAE;gBAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC9B,IAAA,yBAAmB,EAClB,IAAI,CAAC,IAAI,EACT,QAAQ,EACR,QAAQ,EACR,OAAO,KAAK,CACZ,CAAC;iBACF;gBAED,IAAI,KAAK,KAAK,CAAC,EAAE;oBAChB,8BAA8B;oBAC9B,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;iBAChC;qBAAM;oBACN,8DAA8D;oBAC9D,4DAA4D;oBAC5D,gCAAgC;oBAChC,0BAA0B;oBAC1B,mBAAmB;oBACnB,MAAM,eAAe,GACpB,MAAA,MAAA,eAAQ,CAAC,IAAI,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,kBAAkB,CAAC,mCAC1C,MAAA,IAAI,CAAC,aAAa,EAAE,0CAAE,QAAQ,CAC7B,yBAAyB,CACxB,IAAI,CAAC,QAAQ,CAAC,KAAK,EACnB,WAAW,CACX,CACD,mCACD,IAAI,eAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;oBAC5B,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;iBACpD;aACD;iBAAM,IAAI,QAAQ,KAAK,iBAAiB,EAAE;gBAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,YAAY,eAAQ,CAAC,EAAE;oBAC9D,IAAA,yBAAmB,EAClB,IAAI,CAAC,IAAI,EACT,QAAQ,EACR,UAAU,EACV,OAAO,KAAK,CACZ,CAAC;iBACF;gBAED,MAAM,eAAe,GAAG,eAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC7C,IAAI,eAAe,IAAI,SAAS,EAAE;oBACjC,MAAM,IAAI,iBAAU,CACnB,GAAG,IAAA,gBAAS,EACX,IAAI,CAAC,IAAI,CACT,MAAM,QAAQ,uBAAuB,IAAI,CAAC,SAAS,CACnD,KAAK,CACL,2BAA2B,EAC5B,sBAAe,CAAC,gBAAgB,CAChC,CAAC;iBACF;gBAED,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrC,MAAM,OAAO,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,CAChC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CACnD,CAAC;gBACF,IAAI,OAAO,IAAI,SAAS,IAAI,OAAO,KAAK,CAAC,EAAE;oBAC1C,IAAI,OAAO,EAAE;wBACZ,4DAA4D;wBAC5D,8DAA8D;wBAC9D,MAAM,sBAAsB,GAAG,yBAAyB,CACvD,IAAI,CAAC,QAAQ,CAAC,KAAK,EACnB,WAAW,CACX,CAAC;wBACF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,EAAE,eAAe,CAAC,CAAC;qBAC1D;oBACD,OAAO;iBACP;gBAED,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;aACtD;iBAAM;gBACN,IAAA,8BAAwB,EAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;aAC9C;QACF,CAAC,CAAC;QAEQ,QAAY,GAA4B,KAAK,EAAE,EACxD,QAAQ,EACR,WAAW,GACX,EAAoB,EAAE;;YACtB,QAAQ,QAAQ,EAAE;gBACjB,KAAK,SAAS,CAAC;gBACf,KAAK,iBAAiB,CAAC,CAAC;oBACvB,IAAI,WAAW,IAAI,SAAS,EAAE;wBAC7B,IAAA,6BAAuB,EAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;qBAC7C;yBAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;wBAC3C,IAAA,iCAA2B,EAC1B,IAAI,CAAC,IAAI,EACT,QAAQ,EACR,WAAW,CACX,CAAC;qBACF;oBACD,OAAO,MAAA,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,0CAAG,QAAQ,CAAC,CAAC;iBACjD;gBACD;oBACC,IAAA,8BAAwB,EAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;aAC/C;QACF,CAAC,CAAC;IAqIH,CAAC;IA3PO,eAAe,CACrB,GAAwC;QAExC,QAAQ,GAAG,EAAE;YACZ,KAAK,4CAAmC,CAAC,GAAG;gBAC3C,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;YAC5B,KAAK,4CAAmC,CAAC,GAAG;gBAC3C,OAAO,IAAI,CAAC,CAAC,oBAAoB;SAClC;QACD,OAAO,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IA+GM,KAAK,CAAC,OAAO,CAAC,OAAe;;QACnC,IAAI,CAAC,qBAAqB,CACzB,4CAAmC,EACnC,4CAAmC,CAAC,GAAG,CACvC,CAAC;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,eAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;KACxD;IAGM,KAAK,CAAC,GAAG,CACf,OAAe,EACf,OAAe,EACf,eAAmC;;;;QAEnC,IAAI,CAAC,qBAAqB,CACzB,4CAAmC,EACnC,4CAAmC,CAAC,GAAG,CACvC,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;YAC3B,MAAM,UAAU,GACf,8BAA8B,CAAC,mBAAmB,CACjD,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,CACb,CAAC;YAEH,+DAA+D;YAC/D,6DAA6D;YAC7D,yCAAyC;YACzC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,UAAU,EAAE;gBACxC,MAAM,IAAI,iBAAU,CACnB,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,uEAAuE,UAAU,GAAG,EAC5G,sBAAe,CAAC,gBAAgB,CAChC,CAAC;aACF;SACD;aAAM,IAAI,OAAO,GAAG,CAAC,EAAE;YACvB,MAAM,IAAI,iBAAU,CACnB,sCAAsC,EACtC,sBAAe,CAAC,gBAAgB,CAChC,CAAC;SACF;QAED,MAAM,EAAE,GAAG,IAAI,iCAAiC,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC/D,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC7B,OAAO;YACP,OAAO;YACP,eAAe;SACf,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;KACzD;IAEM,KAAK,CAAC,gBAAgB;QAO5B,IAAI,CAAC,qBAAqB,CACzB,4CAAmC,EACnC,4CAAmC,CAAC,GAAG,CACvC,CAAC;QAEF,MAAM,EAAE,GAAG,IAAI,iCAAiC,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC/D,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC7B,OAAO,EAAE,CAAC;SACV,CAAC,CAAC;QACH,MAAM,QAAQ,GACb,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAC9B,EAAE,EACF,IAAI,CAAC,cAAc,CACnB,CAAC;QAEH,2CAA2C;QAC3C,6DAA6D;QAC7D,mCAAmC;QACnC,IAAI,QAAQ,EAAE;YACb,OAAO,IAAA,WAAI,EAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC;SACjE;IACF,CAAC;IAGM,KAAK,CAAC,GAAG,CACf,OAAe;;QAQf,IAAI,CAAC,qBAAqB,CACzB,4CAAmC,EACnC,4CAAmC,CAAC,GAAG,CACvC,CAAC;QAEF,IAAI,OAAO,KAAK,CAAC,EAAE;YAClB,MAAM,IAAI,iBAAU,CACnB,8FAA8F,EAC9F,sBAAe,CAAC,gBAAgB,CAChC,CAAC;SACF;aAAM,IAAI,OAAO,GAAG,CAAC,EAAE;YACvB,MAAM,IAAI,iBAAU,CACnB,sCAAsC,EACtC,sBAAe,CAAC,gBAAgB,CAChC,CAAC;SACF;QAED,MAAM,EAAE,GAAG,IAAI,iCAAiC,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC/D,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC7B,OAAO;SACP,CAAC,CAAC;QACH,MAAM,QAAQ,GACb,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAC9B,EAAE,EACF,IAAI,CAAC,cAAc,CACnB,CAAC;QAEH,0DAA0D;QAC1D,2DAA2D;QAC3D,0CAA0C;QAC1C,IAAI,QAAQ,EAAE;YACb,OAAO,IAAA,WAAI,EAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC;SACtD;KACD;CACD,CAAA;KA/OW,eAAS,OAqFT,gBAAU;AAlGT,iCAAiC;IAD7C,IAAA,kBAAG,EAAC,qBAAc,CAAC,gCAAgC,CAAC,CAAC;GACzC,iCAAiC,CA4P7C;AA5PY,8EAAiC;AAgQ9C,IAAa,8BAA8B,sCAA3C,MAAa,8BAA+B,SAAQ,2BAAY;IAGxD,6BAA6B;QACnC,oDAAoD;QACpD,6DAA6D;QAC7D,OAAO;YACN,GAAG,KAAK,CAAC,6BAA6B,EAAE;YACxC,qBAAc,CAAC,WAAW;SAC1B,CAAC;IACH,CAAC;IAED,4DAA4D;IACrD,KAAK,CAAC,SAAS,CAAC,QAA8B;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAE,CAAC;QAE7C,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;YACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;YAC5B,OAAO,EAAE,gBAAgB,IAAI,CAAC,MAAM,KAAK;YACzC,SAAS,EAAE,MAAM;SACjB,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,gCAA8B,CAAC,mBAAmB,CACpE,QAAQ,EACR,QAAQ,CACR,CAAC;QACF,IAAI,UAAU,KAAK,CAAC,EAAE;YACrB,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;gBAC5B,OAAO,EAAE,8FAA8F;gBACvG,SAAS,EAAE,MAAM;gBACjB,KAAK,EAAE,MAAM;aACb,CAAC,CAAC;YACH,OAAO;SACP;QAED,6EAA6E;QAC7E,iDAAiD;QACjD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,EAAE,OAAO,EAAE,EAAE;YACvD,6BAA6B,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;SAC5D;QAED,0CAA0C;QAC1C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,QAA8B;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,WAAK,CAAC,MAAM,CACvB,qBAAc,CAAC,gCAAgC,CAAC,EAChD,QAAQ,EACR,QAAQ,CACR,CAAC,WAAW,CAAC;YACb,QAAQ,EAAE,sBAAe,CAAC,SAAS;SACnC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,gCAA8B,CAAC,mBAAmB,CACpE,QAAQ,EACR,QAAQ,CACR,CAAC;QAEF,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;YACvC,OAAO,EAAE,iDAAiD;YAC1D,SAAS,EAAE,UAAU;SACrB,CAAC,CAAC;QACH,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,EAAE,OAAO,EAAE,EAAE;YACvD,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;gBAC5B,OAAO,EAAE,2CAA2C,OAAO,KAAK;gBAChE,SAAS,EAAE,UAAU;aACrB,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrC,IAAI,KAAK,IAAI,SAAS,EAAE;gBACvB,MAAM,UAAU,GAAG,2CAA2C,OAAO;oBACrD,KAAK,CAAC,OAAO;oBACb,KAAK,CAAC,eAAe,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACnD,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;oBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;oBAC5B,OAAO,EAAE,UAAU;oBACnB,SAAS,EAAE,SAAS;iBACpB,CAAC,CAAC;aACH;SACD;IACF,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,mBAAmB,CAChC,QAA8B,EAC9B,QAAwB;;QAExB,OAAO,CACN,MAAA,MAAA,MAAA,MAAA,MAAA,QAAQ,CAAC,eAAe,yDAAG,QAAQ,CAAC,MAAM,CAAC,0CAAE,MAAM,0CAChD,8BAA8B,mCACjC,6BAAa,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,mCACrD,CAAC,CACD,CAAC;IACH,CAAC;CACD,CAAA;AAvGY,8BAA8B;IAF1C,IAAA,2BAAY,EAAC,qBAAc,CAAC,gCAAgC,CAAC,CAAC;IAC9D,IAAA,iCAAkB,EAAC,CAAC,CAAC;GACT,8BAA8B,CAuG1C;AAvGY,wEAA8B;AAgH3C,IAAa,iCAAiC,GAA9C,MAAa,iCAAkC,SAAQ,8BAA8B;IACpF,YACC,IAAe,EACf,OAE2C;;QAE3C,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrB,IAAI,IAAA,wCAAyB,EAAC,OAAO,CAAC,EAAE;YACvC,4BAA4B;YAC5B,MAAM,IAAI,iBAAU,CACnB,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,mCAAmC,EAC3D,sBAAe,CAAC,8BAA8B,CAC9C,CAAC;SACF;aAAM;YACN,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAC/B,wDAAwD;YACxD,IAAI,CAAC,eAAe;gBACnB,MAAA,eAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,mCACtC,IAAI,eAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;SAC5B;IACF,CAAC;IAMM,SAAS;QACf,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;YAC1B,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;SACnC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE;gBACR,UAAU,EAAE,IAAI,CAAC,OAAO;gBACxB,UAAU,EAAE,IAAI,CAAC,OAAO;gBACxB,kBAAkB,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE;aACnD;SACD,CAAC;IACH,CAAC;CACD,CAAA;AA/CY,iCAAiC;IAD7C,IAAA,wBAAS,EAAC,4CAAmC,CAAC,GAAG,CAAC;GACtC,iCAAiC,CA+C7C;AA/CY,8EAAiC;AAkD9C,IAAa,oCAAoC,GAAjD,MAAa,oCAAqC,SAAQ,8BAA8B;IACvF,YACC,IAAe,EACf,OAA2C;;QAE3C,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrB,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,eAAe;YACnB,MAAA,eAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,mCAAI,IAAI,eAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IACtE,CAAC;IAMM,aAAa,CAAC,QAA8B;QAClD,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;QAEjD,yCAAyC;QACzC,IAAI,IAAI,CAAC,OAAO,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACrC,OAAO,kBAAkB,CAAC,IAAI,CAC7B,IAAI,EACJ,QAAQ,EACR,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,CACpB,CAAC;IACH,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE;gBACR,UAAU,EAAE,IAAI,CAAC,OAAO;gBACxB,UAAU,EAAE,IAAI,CAAC,OAAO;gBACxB,kBAAkB,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE;aACnD;SACD,CAAC;IACH,CAAC;CACD,CAAA;AAzCY,oCAAoC;IADhD,IAAA,wBAAS,EAAC,4CAAmC,CAAC,MAAM,CAAC;GACzC,oCAAoC,CAyChD;AAzCY,oFAAoC;AA2CjD,SAAS,8CAA8C,CACtD,IAAuC,EACvC,QAA8C;IAE9C,iEAAiE;IACjE,wDAAwD;IACxD,OAAO,IAAI,CAAC,OAAO,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC;AAChE,CAAC;AAWD,IAAa,iCAAiC,GAA9C,MAAa,iCAAkC,SAAQ,8BAA8B;IACpF,YACC,IAAe,EACf,OAE2C;QAE3C,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrB,IAAI,IAAA,wCAAyB,EAAC,OAAO,CAAC,EAAE;YACvC,4BAA4B;YAC5B,MAAM,IAAI,iBAAU,CACnB,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,mCAAmC,EAC3D,sBAAe,CAAC,8BAA8B,CAC9C,CAAC;SACF;aAAM;YACN,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;SAC/B;IACF,CAAC;IAIM,SAAS;QACf,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC3C,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE;SACrC,CAAC;IACH,CAAC;CACD,CAAA;AAhCY,iCAAiC;IAL7C,IAAA,wBAAS,EAAC,4CAAmC,CAAC,GAAG,CAAC;IAClD,IAAA,iCAAkB,EAClB,oCAAoC,EACpC,8CAA8C,CAC9C;GACY,iCAAiC,CAgC7C;AAhCY,8EAAiC"}
|