isy-nodejs 1.0.2-alpha.3 → 1.0.2-alpha.6
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/dist/esm/CodeGeneration/CodeFactory.js +245 -0
- package/dist/esm/CodeGeneration/CodeFactory.js.map +1 -0
- package/dist/esm/CodeGeneration/NodeClassFactory.js +182 -129
- package/dist/esm/CodeGeneration/NodeClassFactory.js.map +1 -1
- package/dist/esm/CodeGeneration/NodeFactory.js +245 -0
- package/dist/esm/CodeGeneration/NodeFactory.js.map +1 -0
- package/dist/esm/Converters.js +15 -1
- package/dist/esm/Converters.js.map +1 -1
- package/dist/esm/Definitions/Global/Drivers.js.map +1 -1
- package/dist/esm/Definitions/Global/Events.js.map +1 -1
- package/dist/esm/Devices/ISYDevice.js +0 -33
- package/dist/esm/Devices/ISYDevice.js.map +1 -1
- package/dist/esm/Devices/ISYDeviceNode.js +2 -2
- package/dist/esm/Devices/ISYDeviceNode.js.map +1 -1
- package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js +49 -0
- package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js +54 -0
- package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js +54 -0
- package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js +46 -0
- package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/BinaryControl.js +46 -0
- package/dist/esm/Devices/Insteon/Generated/BinaryControl.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js +75 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js +78 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js +80 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js +74 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js +40 -0
- package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/DoorLock.js +45 -0
- package/dist/esm/Devices/Insteon/Generated/DoorLock.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js +42 -0
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js +47 -0
- package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/EzrainInput.js +42 -0
- package/dist/esm/Devices/Insteon/Generated/EzrainInput.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js +49 -0
- package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js +53 -0
- package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js +93 -0
- package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js +81 -0
- package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js +49 -0
- package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/IrLincTx.js +39 -0
- package/dist/esm/Devices/Insteon/Generated/IrLincTx.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadButton.js +46 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadButton.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js +78 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js +56 -0
- package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/OnOffControl.js +39 -0
- package/dist/esm/Devices/Insteon/Generated/OnOffControl.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844.js +64 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js +50 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844c.js +64 -0
- package/dist/esm/Devices/Insteon/Generated/Pir2844c.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLamp.js +54 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLamp.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js +56 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js +58 -0
- package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js +42 -0
- package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js +44 -0
- package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js +42 -0
- package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Siren.js +66 -0
- package/dist/esm/Devices/Insteon/Generated/Siren.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/SirenAlert.js +35 -0
- package/dist/esm/Devices/Insteon/Generated/SirenAlert.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/TempLinc.js +83 -0
- package/dist/esm/Devices/Insteon/Generated/TempLinc.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/Thermostat.js +83 -0
- package/dist/esm/Devices/Insteon/Generated/Thermostat.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/X10.js +49 -0
- package/dist/esm/Devices/Insteon/Generated/X10.js.map +1 -0
- package/dist/esm/Devices/Insteon/Generated/index.js +39 -0
- package/dist/esm/Devices/Insteon/Generated/index.js.map +1 -0
- package/dist/esm/Devices/Insteon/InsteonBaseDevice.js +3 -4
- package/dist/esm/Devices/Insteon/InsteonBaseDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonFanDevice.js +2 -2
- package/dist/esm/Devices/Insteon/InsteonFanDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonRelayDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/KeypadButton.js +11 -11
- package/dist/esm/Devices/Insteon/KeypadButton.js.map +1 -1
- package/dist/esm/Devices/Insteon/index.js +16 -29
- package/dist/esm/Devices/Insteon/index.js.map +1 -1
- package/dist/esm/Devices/Lutron/Generated/LoadShed.js +45 -0
- package/dist/esm/Devices/Lutron/Generated/LoadShed.js.map +1 -0
- package/dist/esm/Devices/NodeFactory.js +45 -8
- package/dist/esm/Devices/NodeFactory.js.map +1 -1
- package/dist/esm/Devices/Scene/index.js +2 -2
- package/dist/esm/Devices/Scene/index.js.map +1 -1
- package/dist/esm/Devices/UDI/Generated/Channel.js +42 -0
- package/dist/esm/Devices/UDI/Generated/Channel.js.map +1 -0
- package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js +54 -0
- package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js.map +1 -0
- package/dist/esm/Devices/UDI/Generated/Main.js +45 -0
- package/dist/esm/Devices/UDI/Generated/Main.js.map +1 -0
- package/dist/esm/Devices/UDI/Generated/PulseCounter.js +46 -0
- package/dist/esm/Devices/UDI/Generated/PulseCounter.js.map +1 -0
- package/dist/esm/Devices/UDI/Generated/Relay.js +45 -0
- package/dist/esm/Devices/UDI/Generated/Relay.js.map +1 -0
- package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js +38 -0
- package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js.map +1 -0
- package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js +57 -0
- package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js.map +1 -0
- package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js +65 -0
- package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js.map +1 -0
- package/dist/esm/Devices/ZWave/Generated/index.js +3 -0
- package/dist/esm/Devices/ZWave/Generated/index.js.map +1 -0
- package/dist/esm/Devices/ZWave/index.js +1 -0
- package/dist/esm/Devices/ZWave/index.js.map +1 -1
- package/dist/esm/Devices/index.js +9 -3
- package/dist/esm/Devices/index.js.map +1 -1
- package/dist/esm/ISY.js +14 -9
- package/dist/esm/ISY.js.map +1 -1
- package/dist/esm/ISYDevice.js +7 -1
- package/dist/esm/ISYDevice.js.map +1 -1
- package/dist/esm/ISYNode.js +13 -4
- package/dist/esm/ISYNode.js.map +1 -1
- package/dist/esm/ISYScene.js +13 -12
- package/dist/esm/ISYScene.js.map +1 -1
- package/dist/esm/Matter/Behaviors/BehaviorRegistry.js +13 -0
- package/dist/esm/Matter/Behaviors/BehaviorRegistry.js.map +1 -0
- package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js +3 -0
- package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js.map +1 -1
- package/dist/esm/Matter/Bridge/Server.js +65 -56
- package/dist/esm/Matter/Bridge/Server.js.map +1 -1
- package/dist/esm/Matter/Mappings/Insteon.js +28 -9
- package/dist/esm/Matter/Mappings/Insteon.js.map +1 -1
- package/dist/esm/Model/ClassDefinition.js +22 -3
- package/dist/esm/Model/ClassDefinition.js.map +1 -1
- package/dist/esm/Model/ClusterMap.js +45 -19
- package/dist/esm/Model/ClusterMap.js.map +1 -1
- package/dist/esm/Model/NodeInfo.js +1 -1
- package/dist/esm/Model/NodeInfo.js.map +1 -1
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/types/CodeGeneration/CodeFactory.d.ts +75 -0
- package/dist/esm/types/CodeGeneration/CodeFactory.d.ts.map +1 -0
- package/dist/esm/types/CodeGeneration/EnumFactory.d.ts +1 -1
- package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts +22 -3
- package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts.map +1 -1
- package/dist/esm/types/CodeGeneration/NodeFactory.d.ts +75 -0
- package/dist/esm/types/CodeGeneration/NodeFactory.d.ts.map +1 -0
- package/dist/esm/types/Converters.d.ts +9 -3
- package/dist/esm/types/Converters.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Global/Drivers.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Global/Events.d.ts +2 -2
- package/dist/esm/types/Definitions/Global/Events.d.ts.map +1 -1
- package/dist/esm/types/Devices/DeviceMap.d.ts +1 -1
- package/dist/esm/types/Devices/DeviceMap.d.ts.map +1 -1
- package/dist/esm/types/Devices/EndpointFor.d.ts +7 -5
- package/dist/esm/types/Devices/EndpointFor.d.ts.map +1 -1
- package/dist/esm/types/Devices/ISYDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/ISYDeviceNode.d.ts +5 -13
- package/dist/esm/types/Devices/ISYDeviceNode.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts +76 -0
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts +88 -0
- package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts +88 -0
- package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts +64 -0
- package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts +64 -0
- package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts +144 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts +150 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts +156 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts +138 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts +51 -0
- package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts +64 -0
- package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts +52 -0
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts +70 -0
- package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts +52 -0
- package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts +76 -0
- package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts +88 -0
- package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts +168 -0
- package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts +142 -0
- package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts +71 -0
- package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts +51 -0
- package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts +64 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts +150 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts +94 -0
- package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts +44 -0
- package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts +98 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts +76 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts +98 -0
- package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts +88 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts +94 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts +100 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts +57 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts +63 -0
- package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts +52 -0
- package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts +109 -0
- package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts +37 -0
- package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts +148 -0
- package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts +148 -0
- package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts +76 -0
- package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/Generated/index.d.ts +39 -0
- package/dist/esm/types/Devices/Insteon/Generated/index.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/InsteonBaseDevice.d.ts +4 -10
- package/dist/esm/types/Devices/Insteon/InsteonBaseDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts +22 -28
- package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts +3 -3
- package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonLeakSensorDevice.d.ts +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonLeakSensorDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonRelayDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/KeypadButton.d.ts +19 -19
- package/dist/esm/types/Devices/Insteon/KeypadButton.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/index.d.ts +6 -42
- package/dist/esm/types/Devices/Insteon/index.d.ts.map +1 -1
- package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts +64 -0
- package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts.map +1 -0
- package/dist/esm/types/Devices/NodeFactory.d.ts +18 -7
- package/dist/esm/types/Devices/NodeFactory.d.ts.map +1 -1
- package/dist/esm/types/Devices/Scene/index.d.ts +2 -1
- package/dist/esm/types/Devices/Scene/index.d.ts.map +1 -1
- package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts +51 -0
- package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts.map +1 -0
- package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts +72 -0
- package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts.map +1 -0
- package/dist/esm/types/Devices/UDI/Generated/Main.d.ts +59 -0
- package/dist/esm/types/Devices/UDI/Generated/Main.d.ts.map +1 -0
- package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts +58 -0
- package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts.map +1 -0
- package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts +64 -0
- package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts.map +1 -0
- package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts +44 -0
- package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts.map +1 -0
- package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts +90 -0
- package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts +124 -0
- package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts.map +1 -0
- package/dist/esm/types/Devices/ZWave/Generated/index.d.ts +3 -0
- package/dist/esm/types/Devices/ZWave/Generated/index.d.ts.map +1 -0
- package/dist/esm/types/Devices/ZWave/index.d.ts.map +1 -1
- package/dist/esm/types/Devices/index.d.ts +7 -21
- package/dist/esm/types/Devices/index.d.ts.map +1 -1
- package/dist/esm/types/ISY.d.ts.map +1 -1
- package/dist/esm/types/ISYDevice.d.ts +19 -28
- package/dist/esm/types/ISYDevice.d.ts.map +1 -1
- package/dist/esm/types/ISYNode.d.ts +25 -8
- package/dist/esm/types/ISYNode.d.ts.map +1 -1
- package/dist/esm/types/ISYScene.d.ts +5 -6
- package/dist/esm/types/ISYScene.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/BehaviorRegistry.d.ts +11 -0
- package/dist/esm/types/Matter/Behaviors/BehaviorRegistry.d.ts.map +1 -0
- package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts +1 -4
- package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts +5 -4
- package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Bridge/Server.d.ts +1 -1
- package/dist/esm/types/Matter/Bridge/Server.d.ts.map +1 -1
- package/dist/esm/types/Model/ClassDefinition.d.ts +6 -2
- package/dist/esm/types/Model/ClassDefinition.d.ts.map +1 -1
- package/dist/esm/types/Model/ClusterMap.d.ts +12 -21
- package/dist/esm/types/Model/ClusterMap.d.ts.map +1 -1
- package/dist/esm/types/Model/EnumDefinition.d.ts +1 -1
- package/dist/esm/types/Utils.d.ts +18 -0
- package/dist/esm/types/Utils.d.ts.map +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/CodeGeneration/CodeFactory.ts +341 -0
- package/src/CodeGeneration/NodeClassFactory.ts +362 -233
- package/src/Converters.ts +23 -3
- package/src/Definitions/Global/Drivers.ts +1 -0
- package/src/Definitions/Global/Events.ts +3 -3
- package/src/Devices/Brultech/Generated/Channel.ts +8 -6
- package/src/Devices/Brultech/Generated/Main.ts +9 -9
- package/src/Devices/DeviceMap.ts +1 -1
- package/src/Devices/ISYDevice.ts +8 -57
- package/src/Devices/ISYDeviceNode.ts +143 -166
- package/src/Devices/Insteon/Generated/AlertModuleArmed.ts +13 -21
- package/src/Devices/Insteon/Generated/AlertModuleSiren.ts +18 -29
- package/src/Devices/Insteon/Generated/BallastRelayLampSwitch.ts +18 -29
- package/src/Devices/Insteon/Generated/BinaryAlarm.ts +14 -17
- package/src/Devices/Insteon/Generated/BinaryControl.ts +14 -17
- package/src/Devices/Insteon/Generated/DimmerLamp.ts +25 -51
- package/src/Devices/Insteon/Generated/DimmerLampSwitch.ts +36 -64
- package/src/Devices/Insteon/Generated/DimmerLampSwitchLed.ts +31 -60
- package/src/Devices/Insteon/Generated/DimmerMotorSwitch.ts +24 -47
- package/src/Devices/Insteon/Generated/DimmerSwitch.ts +13 -14
- package/src/Devices/Insteon/Generated/DoorLock.ts +11 -15
- package/src/Devices/Insteon/Generated/Ezio2x4Input.ts +12 -11
- package/src/Devices/Insteon/Generated/Ezio2x4Output.ts +12 -18
- package/src/Devices/Insteon/Generated/EzrainInput.ts +12 -11
- package/src/Devices/Insteon/Generated/EzrainOutput.ts +13 -21
- package/src/Devices/Insteon/Generated/FanLincMotor.ts +15 -27
- package/src/Devices/Insteon/Generated/I3KeypadFlags.ts +19 -39
- package/src/Devices/Insteon/Generated/I3PaddleFlags.ts +17 -33
- package/src/Devices/Insteon/Generated/ImeterSolo.ts +11 -15
- package/src/Devices/Insteon/Generated/IrLincTx.ts +10 -12
- package/src/Devices/Insteon/Generated/{KeypadButtonAdv.ts → KeypadButton.ts} +23 -26
- package/src/Devices/Insteon/Generated/KeypadDimmer.ts +30 -57
- package/src/Devices/Insteon/Generated/KeypadRelay.ts +30 -43
- package/src/Devices/Insteon/Generated/OnOffControl.ts +15 -12
- package/src/Devices/Insteon/Generated/Pir2844.ts +15 -20
- package/src/Devices/Insteon/Generated/Pir2844OnOff.ts +16 -23
- package/src/Devices/Insteon/Generated/Pir2844c.ts +15 -20
- package/src/Devices/Insteon/Generated/RelayLamp.ts +29 -41
- package/src/Devices/Insteon/Generated/RelayLampSwitch.ts +29 -42
- package/src/Devices/Insteon/Generated/RelayLampSwitchLed.ts +24 -39
- package/src/Devices/Insteon/Generated/RelaySwitch.ts +14 -17
- package/src/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.ts +15 -20
- package/src/Devices/Insteon/Generated/RemoteLinc2.ts +12 -11
- package/src/Devices/Insteon/Generated/Siren.ts +18 -29
- package/src/Devices/Insteon/Generated/SirenAlert.ts +11 -8
- package/src/Devices/Insteon/Generated/TempLinc.ts +18 -36
- package/src/Devices/Insteon/Generated/Thermostat.ts +18 -36
- package/src/Devices/Insteon/Generated/X10.ts +13 -21
- package/src/Devices/Insteon/Generated/index.ts +38 -0
- package/src/Devices/Insteon/InsteonBaseDevice.ts +5 -4
- package/src/Devices/Insteon/InsteonFanDevice.ts +3 -4
- package/src/Devices/Insteon/InsteonRelayDevice.ts +1 -0
- package/src/Devices/Insteon/KeypadButton.ts +31 -31
- package/src/Devices/Insteon/index.ts +18 -26
- package/src/Devices/Lutron/Generated/LoadShed.ts +11 -15
- package/src/Devices/NCD/Generated/Relay.ts +12 -18
- package/src/Devices/NodeFactory.ts +67 -13
- package/src/Devices/Poly/Generated/MatterBridge.ts +84 -0
- package/src/Devices/Scene/Generated/Scene.ts +33 -65
- package/src/Devices/Scene/index.ts +2 -1
- package/src/Devices/UDI/Generated/Channel.ts +8 -6
- package/src/Devices/UDI/Generated/Em3MainChannel.ts +8 -6
- package/src/Devices/UDI/Generated/Main.ts +9 -9
- package/src/Devices/UDI/Generated/PulseCounter.ts +8 -6
- package/src/Devices/UDI/Generated/Relay.ts +11 -15
- package/src/Devices/UDI/Generated/TemperatureSensor.ts +8 -6
- package/src/Devices/ZWave/Generated/ColorSwitch.ts +16 -24
- package/src/Devices/ZWave/Generated/DimmerSwitch.ts +25 -49
- package/src/Devices/ZWave/Generated/index.ts +2 -0
- package/src/Devices/ZWave/index.ts +5 -1
- package/src/Devices/ZigBeeLegacy/Generated/Relay.ts +12 -18
- package/src/Devices/ZigBeeLegacy/Generated/Thermostat.ts +17 -33
- package/src/Devices/index.ts +17 -12
- package/src/ISY.ts +9 -3
- package/src/ISYDevice.ts +68 -57
- package/src/ISYNode.ts +32 -8
- package/src/ISYScene.ts +31 -28
- package/src/Matter/Behaviors/BehaviorRegistry.ts +26 -0
- package/src/Matter/Behaviors/Insteon/ISYOnOffBehavior.ts +6 -0
- package/src/Matter/Bridge/Server.ts +39 -15
- package/src/Matter/Mappings/Insteon.ts +37 -20
- package/src/Model/ClassDefinition.ts +34 -4
- package/src/Model/ClusterMap.ts +73 -57
- package/src/Model/NodeInfo.ts +1 -1
- package/src/Utils.ts +38 -0
- package/tsconfig.json +7 -1
- package/src/Devices/Insteon/Generated/AlertModuleSirenAdv.ts +0 -123
- package/src/Devices/Insteon/Generated/BallastRelayLampSwitchAdv.ts +0 -123
- package/src/Devices/Insteon/Generated/BinaryAlarmAdv.ts +0 -91
- package/src/Devices/Insteon/Generated/BinaryControlAdv.ts +0 -91
- package/src/Devices/Insteon/Generated/DimmerLampSwitchAdv.ts +0 -207
- package/src/Devices/Insteon/Generated/DimmerLampSwitchLedAdv.ts +0 -215
- package/src/Devices/Insteon/Generated/DimmerMotorSwitchAdv.ts +0 -191
- package/src/Devices/Insteon/Generated/DimmerSwitchOnlyAdv.ts +0 -73
- package/src/Devices/Insteon/Generated/Ezio2x4InputAdv.ts +0 -75
- package/src/Devices/Insteon/Generated/EzrainInputAdv.ts +0 -75
- package/src/Devices/Insteon/Generated/KeypadDimmerAdv.ts +0 -207
- package/src/Devices/Insteon/Generated/KeypadRelayAdv.ts +0 -131
- package/src/Devices/Insteon/Generated/OnOffControlAdv.ts +0 -65
- package/src/Devices/Insteon/Generated/Pir2844Adv.ts +0 -139
- package/src/Devices/Insteon/Generated/Pir2844OnOffAdv.ts +0 -107
- package/src/Devices/Insteon/Generated/Pir2844cAdv.ts +0 -139
- package/src/Devices/Insteon/Generated/RelayLampOnlyAdv.ts +0 -123
- package/src/Devices/Insteon/Generated/RelayLampSwitchAdv.ts +0 -131
- package/src/Devices/Insteon/Generated/RelayLampSwitchLedAdv.ts +0 -139
- package/src/Devices/Insteon/Generated/RelaySwitchOnlyAdv.ts +0 -81
- package/src/Devices/Insteon/Generated/RelaySwitchOnlyPlusQueryAdv.ts +0 -89
- package/src/Devices/Insteon/Generated/RemoteLinc2Adv.ts +0 -75
- package/src/Devices/Insteon/Generated/SirenArm.ts +0 -55
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { IndentationText, Project, QuoteKind, ts } from 'ts-morph';
|
|
2
2
|
import { factory } from 'typescript';
|
|
3
3
|
import { UnitOfMeasure } from '../Definitions/Global/UOM.js';
|
|
4
|
+
import { Family } from '../Definitions/index.js';
|
|
4
5
|
import { NodeClassDefinition } from '../Model/ClassDefinition.js';
|
|
5
6
|
import { EnumDefinitionMap } from '../Model/EnumDefinition.js';
|
|
6
|
-
import {
|
|
7
|
+
import { CodeFactory } from './CodeFactory.js';
|
|
7
8
|
// #endregion Type aliases (1)
|
|
8
9
|
// #region Classes (1)
|
|
9
|
-
export class NodeClassFactory {
|
|
10
|
+
export class NodeClassFactory extends CodeFactory {
|
|
10
11
|
// #region Properties (2)
|
|
11
12
|
static _basePath;
|
|
12
13
|
static project = new Project({
|
|
@@ -20,6 +21,7 @@ export class NodeClassFactory {
|
|
|
20
21
|
insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces: true
|
|
21
22
|
}
|
|
22
23
|
});
|
|
24
|
+
static instance = new NodeClassFactory(ts.factory);
|
|
23
25
|
// #endregion Properties (2)
|
|
24
26
|
// #region Public Static Getters And Setters (2)
|
|
25
27
|
static get basePath() {
|
|
@@ -31,9 +33,18 @@ export class NodeClassFactory {
|
|
|
31
33
|
// #endregion Public Static Getters And Setters (2)
|
|
32
34
|
// #region Public Static Methods (4)
|
|
33
35
|
static buildNodeClasses(map) {
|
|
34
|
-
return Object.values(map)
|
|
36
|
+
return Object.values(map)
|
|
37
|
+
.filter((p) => !p.equivalentTo)
|
|
38
|
+
.map((p) => {
|
|
39
|
+
try {
|
|
40
|
+
return NodeClassFactory.instance.createNodeClass(p);
|
|
41
|
+
}
|
|
42
|
+
catch (e) {
|
|
43
|
+
console.error(e);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
35
46
|
}
|
|
36
|
-
|
|
47
|
+
createNodeClass(nodeClassDef) {
|
|
37
48
|
let path = `${NodeClassFactory.basePath}/${Family[nodeClassDef.family]}/Generated/${nodeClassDef.name}.ts`;
|
|
38
49
|
let sf = ts.createSourceFile(path, '', ts.ScriptTarget.ES2023, true, ts.ScriptKind.TS);
|
|
39
50
|
//@ts-expect-error
|
|
@@ -41,7 +52,7 @@ export class NodeClassFactory {
|
|
|
41
52
|
factory.createImportDeclaration(undefined, factory.createImportClause(false, undefined, factory.createNamedImports([factory.createImportSpecifier(false, undefined, factory.createIdentifier('UnitOfMeasure'))])), factory.createStringLiteral('../../../Definitions/Global/UOM.js'), undefined),
|
|
42
53
|
factory.createImportDeclaration(undefined, factory.createImportClause(false, undefined, factory.createNamedImports([factory.createImportSpecifier(false, undefined, factory.createIdentifier('Family'))])), factory.createStringLiteral('../../../Definitions/Global/Families.js'), undefined),
|
|
43
54
|
factory.createImportDeclaration(undefined, factory.createImportClause(true, undefined, factory.createNamedImports([factory.createImportSpecifier(false, undefined, factory.createIdentifier('NodeInfo'))])), factory.createStringLiteral('../../../Model/NodeInfo.js'), undefined),
|
|
44
|
-
|
|
55
|
+
NodeClassFactory.instance.createImportDeclaration('../../../ISY.js', ['ISY']),
|
|
45
56
|
factory.createImportDeclaration(undefined, factory.createImportClause(true, undefined, factory.createNamedImports([factory.createImportSpecifier(false, undefined, factory.createIdentifier('ISYNode'))])), factory.createStringLiteral('../../../ISYNode.js'), undefined),
|
|
46
57
|
factory.createImportDeclaration(undefined, factory.createImportClause(false, undefined, factory.createNamedImports([factory.createImportSpecifier(false, undefined, factory.createIdentifier('Base'))])), factory.createStringLiteral('../index.js'), undefined),
|
|
47
58
|
factory.createImportDeclaration(undefined, factory.createImportClause(false, undefined, factory.createNamedImports([factory.createImportSpecifier(false, undefined, factory.createIdentifier('ISYDeviceNode'))])), factory.createStringLiteral('../../ISYDeviceNode.js'), undefined),
|
|
@@ -49,7 +60,7 @@ export class NodeClassFactory {
|
|
|
49
60
|
factory.createImportDeclaration(undefined, factory.createImportClause(false, undefined, factory.createNamedImports([factory.createImportSpecifier(false, undefined, factory.createIdentifier(Family[nodeClassDef.family]))])), factory.createStringLiteral('../../../Definitions/index.js'), undefined),
|
|
50
61
|
factory.createImportDeclaration(undefined, factory.createImportClause(true, undefined, factory.createNamedImports([factory.createImportSpecifier(false, undefined, factory.createIdentifier('DriverState'))])), factory.createStringLiteral('../../../Model/DriverState.js'), undefined),
|
|
51
62
|
factory.createImportDeclaration(undefined, factory.createImportClause(false, undefined, factory.createNamedImports([factory.createImportSpecifier(false, undefined, factory.createIdentifier('NodeFactory'))])), factory.createStringLiteral('../../NodeFactory.js'), undefined),
|
|
52
|
-
factory.createVariableStatement(
|
|
63
|
+
factory.createVariableStatement(undefined, factory.createVariableDeclarationList([factory.createVariableDeclaration(factory.createIdentifier('nodeDefId'), undefined, undefined, factory.createStringLiteral(nodeClassDef.id))], ts.NodeFlags.Const)),
|
|
53
64
|
factory.createTypeAliasDeclaration(undefined, factory.createIdentifier('Commands'), undefined, factory.createTypeReferenceNode(factory.createQualifiedName(factory.createIdentifier(nodeClassDef.name), factory.createIdentifier('Commands')), undefined)),
|
|
54
65
|
factory.createTypeAliasDeclaration(undefined, factory.createIdentifier('Drivers'), undefined, factory.createTypeReferenceNode(factory.createQualifiedName(factory.createIdentifier(nodeClassDef.name), factory.createIdentifier('Drivers')), undefined)),
|
|
55
66
|
factory.createClassDeclaration([factory.createToken(ts.SyntaxKind.ExportKeyword)], factory.createIdentifier(`${nodeClassDef.name}Node`), undefined, [
|
|
@@ -74,25 +85,36 @@ export class NodeClassFactory {
|
|
|
74
85
|
// factory.createObjectLiteralExpression([], false)
|
|
75
86
|
// ),
|
|
76
87
|
factory.createPropertyDeclaration([factory.createToken(ts.SyntaxKind.StaticKeyword), factory.createToken(ts.SyntaxKind.OverrideKeyword)], factory.createIdentifier('nodeDefId'), undefined, undefined, factory.createStringLiteral(nodeClassDef.id)),
|
|
77
|
-
|
|
88
|
+
NodeClassFactory.instance.createPropertyDeclaration('implements', factory.createArrayLiteralExpression(nodeClassDef.implementedBy ?
|
|
89
|
+
[NodeClassFactory.instance.createStringLiteral(nodeClassDef.id)].concat(!nodeClassDef.implements || nodeClassDef.implements.length == 0 ? [] : nodeClassDef.implements?.map((p) => factory.createStringLiteral(p)))
|
|
90
|
+
: [NodeClassFactory.instance.createStringLiteral(nodeClassDef.id)]), NodeClassFactory.instance.createModifiers(ts.ModifierFlags.Static | ts.ModifierFlags.Override)),
|
|
91
|
+
factory.createPropertyDeclaration([factory.createToken(ts.SyntaxKind.DeclareKeyword), factory.createToken(ts.SyntaxKind.ReadonlyKeyword)], factory.createIdentifier('nodeDefId'), undefined, nodeClassDef.equivalents ?
|
|
92
|
+
NodeClassFactory.instance.createUnionTypeNode(...[NodeClassFactory.instance.createLiteralTypeNode(nodeClassDef.id)].concat(!nodeClassDef.equivalents || nodeClassDef.equivalents.length == 0 ? [] : nodeClassDef.equivalents?.map((p) => factory.createLiteralTypeNode(factory.createStringLiteral(p)))))
|
|
93
|
+
: NodeClassFactory.instance.createLiteralTypeNode(nodeClassDef.id), undefined),
|
|
78
94
|
factory.createConstructorDeclaration(undefined, [
|
|
79
95
|
factory.createParameterDeclaration(undefined, undefined, factory.createIdentifier('isy'), undefined, factory.createTypeReferenceNode(factory.createIdentifier('ISY'), undefined), undefined),
|
|
80
96
|
factory.createParameterDeclaration(undefined, undefined, factory.createIdentifier('nodeInfo'), undefined, factory.createTypeReferenceNode(factory.createIdentifier('NodeInfo'), undefined), undefined)
|
|
81
97
|
], factory.createBlock([
|
|
82
98
|
factory.createExpressionStatement(factory.createCallExpression(factory.createSuper(), undefined, [factory.createIdentifier('isy'), factory.createIdentifier('nodeInfo')])),
|
|
83
|
-
...Object.values(nodeClassDef.drivers).map(createDriverInitializationStatement)
|
|
99
|
+
...Object.values(nodeClassDef.drivers).map(p => NodeClassFactory.instance.createDriverInitializationStatement(p))
|
|
84
100
|
], true)),
|
|
85
|
-
...Object.values(nodeClassDef.commands).map(createCommandMethodDeclaration),
|
|
86
|
-
...Object.values(nodeClassDef.drivers).map(createDriverGetDeclaration)
|
|
101
|
+
...Object.values(nodeClassDef.commands).map(p => NodeClassFactory.instance.createCommandMethodDeclaration(p)),
|
|
102
|
+
...Object.values(nodeClassDef.drivers).map(p => NodeClassFactory.instance.createDriverGetDeclaration(p))
|
|
87
103
|
]),
|
|
88
104
|
factory.createExpressionStatement(factory.createCallExpression(factory.createPropertyAccessExpression(factory.createIdentifier('NodeFactory'), factory.createIdentifier('register')), undefined, [
|
|
89
105
|
factory.createIdentifier(`${nodeClassDef.name}Node`)
|
|
90
106
|
])),
|
|
107
|
+
...(nodeClassDef.equivalents ?
|
|
108
|
+
nodeClassDef.equivalents?.map((p) => factory.createExpressionStatement(factory.createCallExpression(factory.createPropertyAccessExpression(factory.createIdentifier('NodeFactory'), factory.createIdentifier('register')), undefined, [
|
|
109
|
+
factory.createIdentifier(`${nodeClassDef.name}Node`),
|
|
110
|
+
factory.createStringLiteral(p)
|
|
111
|
+
])))
|
|
112
|
+
: []),
|
|
91
113
|
factory.createModuleDeclaration([factory.createToken(ts.SyntaxKind.ExportKeyword)], factory.createIdentifier(nodeClassDef.name), factory.createModuleBlock([
|
|
92
114
|
factory.createInterfaceDeclaration([factory.createToken(ts.SyntaxKind.ExportKeyword)], factory.createIdentifier('Interface'), undefined, [
|
|
93
115
|
factory.createHeritageClause(ts.SyntaxKind.ExtendsKeyword, [
|
|
94
116
|
factory.createExpressionWithTypeArguments(factory.createIdentifier('Omit'), [
|
|
95
|
-
|
|
117
|
+
NodeClassFactory.instance.createTypeReferenceNode('InstanceType', NodeClassFactory.instance.factory.createTypeQueryNode(factory.createIdentifier(`${nodeClassDef.name}Node`))),
|
|
96
118
|
factory.createTypeOperatorNode(ts.SyntaxKind.KeyOfKeyword, factory.createTypeReferenceNode(factory.createIdentifier('ISYDeviceNode'), [
|
|
97
119
|
factory.createKeywordTypeNode(ts.SyntaxKind.AnyKeyword),
|
|
98
120
|
factory.createKeywordTypeNode(ts.SyntaxKind.AnyKeyword),
|
|
@@ -101,7 +123,11 @@ export class NodeClassFactory {
|
|
|
101
123
|
]))
|
|
102
124
|
])
|
|
103
125
|
])
|
|
104
|
-
], [
|
|
126
|
+
], [
|
|
127
|
+
factory.createPropertySignature(undefined, factory.createIdentifier('nodeDefId'), undefined, nodeClassDef.equivalents ?
|
|
128
|
+
NodeClassFactory.instance.createUnionTypeNode(...[NodeClassFactory.instance.createLiteralTypeNode(nodeClassDef.id)].concat(!nodeClassDef.equivalents || nodeClassDef.equivalents.length == 0 ? [] : nodeClassDef.equivalents?.map((p) => factory.createLiteralTypeNode(factory.createStringLiteral(p)))))
|
|
129
|
+
: NodeClassFactory.instance.createLiteralTypeNode(nodeClassDef.id))
|
|
130
|
+
]),
|
|
105
131
|
factory.createFunctionDeclaration([factory.createToken(ts.SyntaxKind.ExportKeyword)], undefined, factory.createIdentifier('is'), undefined, [
|
|
106
132
|
factory.createParameterDeclaration(undefined, undefined, factory.createIdentifier('node'), undefined, factory.createTypeReferenceNode(factory.createIdentifier('ISYNode'), [
|
|
107
133
|
factory.createKeywordTypeNode(ts.SyntaxKind.AnyKeyword),
|
|
@@ -109,9 +135,14 @@ export class NodeClassFactory {
|
|
|
109
135
|
factory.createKeywordTypeNode(ts.SyntaxKind.AnyKeyword),
|
|
110
136
|
factory.createKeywordTypeNode(ts.SyntaxKind.AnyKeyword)
|
|
111
137
|
]), undefined)
|
|
112
|
-
], factory.createTypePredicateNode(undefined, factory.createIdentifier('node'), factory.createTypeReferenceNode(factory.createIdentifier(`${nodeClassDef.name}Node`), undefined)),
|
|
113
|
-
|
|
114
|
-
|
|
138
|
+
], factory.createTypePredicateNode(undefined, factory.createIdentifier('node'), factory.createTypeReferenceNode(factory.createIdentifier(`${nodeClassDef.name}Node`), undefined)), NodeClassFactory.instance.createBlock(NodeClassFactory.instance.createReturnStatement(factory.createCallExpression(factory.createPropertyAccessExpression(factory.createArrayLiteralExpression(nodeClassDef.equivalents ?
|
|
139
|
+
[NodeClassFactory.instance.createStringLiteral(nodeClassDef.id)].concat(!nodeClassDef.equivalents || nodeClassDef.equivalents.length == 0 ? [] : nodeClassDef.equivalents?.map((p) => factory.createStringLiteral(p)))
|
|
140
|
+
: [NodeClassFactory.instance.createStringLiteral(nodeClassDef.id)]), 'includes'), undefined, [factory.createPropertyAccessExpression(factory.createIdentifier('node'), factory.createIdentifier('nodeDefId'))])))),
|
|
141
|
+
factory.createFunctionDeclaration([factory.createToken(ts.SyntaxKind.ExportKeyword)], undefined, factory.createIdentifier('isImplementedBy'), undefined, [
|
|
142
|
+
factory.createParameterDeclaration(undefined, undefined, factory.createIdentifier('node'), undefined, NodeClassFactory.instance.createTypeReferenceNode('ISYNode', NodeClassFactory.instance.createKeywordTypeNode(ts.SyntaxKind.AnyKeyword), NodeClassFactory.instance.createKeywordTypeNode(ts.SyntaxKind.AnyKeyword), NodeClassFactory.instance.createKeywordTypeNode(ts.SyntaxKind.AnyKeyword), NodeClassFactory.instance.createKeywordTypeNode(ts.SyntaxKind.AnyKeyword)), undefined)
|
|
143
|
+
], factory.createTypePredicateNode(undefined, factory.createIdentifier('node'), factory.createTypeReferenceNode(factory.createIdentifier(`${nodeClassDef.name}Node`), undefined)), NodeClassFactory.instance.createBlock(true, factory.createReturnStatement(factory.createCallExpression(factory.createPropertyAccessExpression(factory.createArrayLiteralExpression(nodeClassDef.implementedBy ?
|
|
144
|
+
[NodeClassFactory.instance.createStringLiteral(nodeClassDef.id)].concat(!nodeClassDef.implementedBy || nodeClassDef.implementedBy.length == 0 ? [] : nodeClassDef.implementedBy?.map((p) => factory.createStringLiteral(p)))
|
|
145
|
+
: [NodeClassFactory.instance.createStringLiteral(nodeClassDef.id)]), 'includes'), undefined, [factory.createPropertyAccessExpression(factory.createIdentifier('node'), factory.createIdentifier('nodeDefId'))])))),
|
|
115
146
|
factory.createFunctionDeclaration([factory.createToken(ts.SyntaxKind.ExportKeyword)], undefined, factory.createIdentifier('create'), undefined, [
|
|
116
147
|
factory.createParameterDeclaration(undefined, undefined, factory.createIdentifier('isy'), undefined, factory.createTypeReferenceNode(factory.createIdentifier('ISY'), undefined), undefined),
|
|
117
148
|
factory.createParameterDeclaration(undefined, undefined, factory.createIdentifier('nodeInfo'), undefined, factory.createTypeReferenceNode(factory.createIdentifier('NodeInfo'), undefined), undefined)
|
|
@@ -119,8 +150,8 @@ export class NodeClassFactory {
|
|
|
119
150
|
factory.createReturnStatement(factory.createNewExpression(factory.createIdentifier(`${nodeClassDef.name}Node`), undefined, [factory.createIdentifier('isy'), factory.createIdentifier('nodeInfo')]))
|
|
120
151
|
], true)),
|
|
121
152
|
factory.createVariableStatement([factory.createToken(ts.SyntaxKind.ExportKeyword)], factory.createVariableDeclarationList([factory.createVariableDeclaration(factory.createIdentifier('Node'), undefined, undefined, factory.createIdentifier(`${nodeClassDef.name}Node`))], ts.NodeFlags.Const)),
|
|
122
|
-
factory.createTypeAliasDeclaration([factory.createToken(ts.SyntaxKind.ExportKeyword)], factory.createIdentifier('Commands'), undefined, factory.createTypeLiteralNode([...Object.values(nodeClassDef.commands).map(createCommandSignature)])),
|
|
123
|
-
factory.createTypeAliasDeclaration([factory.createToken(ts.SyntaxKind.ExportKeyword)], factory.createIdentifier('Drivers'), undefined, factory.createTypeLiteralNode([...Object.values(nodeClassDef.drivers).map(createDriverSignature)]))
|
|
153
|
+
factory.createTypeAliasDeclaration([factory.createToken(ts.SyntaxKind.ExportKeyword)], factory.createIdentifier('Commands'), undefined, factory.createTypeLiteralNode([...Object.values(nodeClassDef.commands).map(NodeClassFactory.instance.createCommandSignature)])),
|
|
154
|
+
factory.createTypeAliasDeclaration([factory.createToken(ts.SyntaxKind.ExportKeyword)], factory.createIdentifier('Drivers'), undefined, factory.createTypeLiteralNode([...Object.values(nodeClassDef.drivers).map(NodeClassFactory.instance.createDriverSignature)]))
|
|
124
155
|
]), ts.NodeFlags.Namespace)
|
|
125
156
|
];
|
|
126
157
|
//let f = createWrappedNode(sf);
|
|
@@ -162,89 +193,137 @@ export class NodeClassFactory {
|
|
|
162
193
|
let modules = [];
|
|
163
194
|
for (const family of NodeClassDefinition.Map.keys()) {
|
|
164
195
|
var t = this.generateClassesForFamily(family);
|
|
165
|
-
modules.push(buildClassIndex(family, t));
|
|
196
|
+
modules.push(NodeClassFactory.buildClassIndex(family, t));
|
|
166
197
|
}
|
|
167
198
|
return modules;
|
|
168
199
|
}
|
|
169
200
|
static generateClassesForFamily(family) {
|
|
170
|
-
return
|
|
201
|
+
return NodeClassFactory.buildNodeClasses(NodeClassDefinition.Map.get(family));
|
|
171
202
|
}
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
function createCommandParameterType(def, parent) {
|
|
195
|
-
if (def.enum) {
|
|
196
|
-
{
|
|
197
|
-
if (EnumDefinitionMap.has(parent.classDef.family)) {
|
|
198
|
-
var enumDef = EnumDefinitionMap.get(parent.classDef.family)[def.indexId];
|
|
199
|
-
// ?? EnumDefinitionMap[Family.Global]?[def.indexId]
|
|
200
|
-
if (enumDef) {
|
|
201
|
-
return factory.createTypeReferenceNode(factory.createQualifiedName(factory.createIdentifier(Family[parent.classDef.family]), factory.createIdentifier(enumDef.name)), undefined);
|
|
203
|
+
// #region Functions (12)
|
|
204
|
+
static buildClassIndex(family, classes) {
|
|
205
|
+
return {
|
|
206
|
+
family,
|
|
207
|
+
path: `/${Family[family]}/Generated/index.ts`,
|
|
208
|
+
statements: [...classes.map((p) => factory.createExportDeclaration(undefined, false, undefined, factory.createStringLiteral(`./${p.name}.js`), undefined))]
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
createCommandArguments(def) {
|
|
212
|
+
let c = [
|
|
213
|
+
factory.createStringLiteral(def.id)
|
|
214
|
+
];
|
|
215
|
+
let n = [];
|
|
216
|
+
let r = [];
|
|
217
|
+
if (def.parameters) {
|
|
218
|
+
for (let p in def.parameters) {
|
|
219
|
+
let p2 = def.parameters[p];
|
|
220
|
+
if (!p2?.id || p2.id == 'value') {
|
|
221
|
+
n.push(factory.createIdentifier(p2.name ?? 'value'));
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
r.push(p2);
|
|
202
225
|
}
|
|
203
226
|
}
|
|
204
|
-
|
|
205
|
-
|
|
227
|
+
}
|
|
228
|
+
let fnl = [...c, ...n,
|
|
229
|
+
...(r.length > 0 ? [factory.createObjectLiteralExpression(r.map((q) => factory.createPropertyAssignment(factory.createIdentifier(q.id ?? 'value'), factory.createIdentifier(q.name ?? 'value'))), false)] : [])
|
|
230
|
+
];
|
|
231
|
+
return fnl.length > 0 ? fnl : undefined;
|
|
232
|
+
}
|
|
233
|
+
createCommandMethodDeclaration(def) {
|
|
234
|
+
return factory.createMethodDeclaration([factory.createToken(ts.SyntaxKind.AsyncKeyword)], undefined, factory.createIdentifier(def.name), undefined, undefined, def.parameters ? Object.values(def.parameters).map(NodeClassFactory.instance.createParameterDeclarationSignature.bind(this)) : undefined, undefined, factory.createBlock([factory.createReturnStatement(factory.createCallExpression(factory.createPropertyAccessExpression(factory.createThis(), factory.createIdentifier('sendCommand')), undefined, NodeClassFactory.instance.createCommandArguments(def)))]));
|
|
235
|
+
}
|
|
236
|
+
createCommandParameterType(def, parent) {
|
|
237
|
+
if (def.enum) {
|
|
238
|
+
{
|
|
239
|
+
if (EnumDefinitionMap.has(parent.classDef.family)) {
|
|
240
|
+
var enumDef = EnumDefinitionMap.get(parent.classDef.family)[def.indexId];
|
|
241
|
+
// ?? EnumDefinitionMap[Family.Global]?[def.indexId]
|
|
242
|
+
if (enumDef) {
|
|
243
|
+
return factory.createTypeReferenceNode(factory.createQualifiedName(factory.createIdentifier(Family[parent.classDef.family]), factory.createIdentifier(enumDef.name)), undefined);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
if (def.values) {
|
|
247
|
+
return NodeClassFactory.instance.createUnionTypeNode(...Object.keys(def.values).map((p) => factory.createLiteralTypeNode(factory.createNumericLiteral(p))));
|
|
248
|
+
}
|
|
249
|
+
// return NodeClassFactory.instance.createUnionTypeNode(...
|
|
250
|
+
// Object.values(def.values).map((p) => factory.createTypeReferenceNode(
|
|
251
|
+
// factory.createQualifiedName(
|
|
252
|
+
// factory.createIdentifier("UnitOfMeasure"),
|
|
253
|
+
// factory.createIdentifier(UnitOfMeasure)
|
|
254
|
+
// ),
|
|
255
|
+
// undefined
|
|
256
|
+
// )))
|
|
206
257
|
}
|
|
207
|
-
// return factory.createUnionTypeNode(
|
|
208
|
-
// Object.values(def.values).map((p) => factory.createTypeReferenceNode(
|
|
209
|
-
// factory.createQualifiedName(
|
|
210
|
-
// factory.createIdentifier("UnitOfMeasure"),
|
|
211
|
-
// factory.createIdentifier(UnitOfMeasure)
|
|
212
|
-
// ),
|
|
213
|
-
// undefined
|
|
214
|
-
// )))
|
|
215
258
|
}
|
|
259
|
+
return factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword);
|
|
216
260
|
}
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
261
|
+
createCommandSignature(def) {
|
|
262
|
+
const that = this;
|
|
263
|
+
return factory.createPropertySignature(undefined, factory.createIdentifier(def.id), undefined, factory.createIntersectionTypeNode([
|
|
264
|
+
factory.createParenthesizedType(factory.createFunctionTypeNode(undefined, def.parameters ? Object.values(def.parameters).map(p => NodeClassFactory.instance.createParameterSignature(p)) : [], factory.createTypeReferenceNode(factory.createIdentifier('Promise'), [factory.createKeywordTypeNode(ts.SyntaxKind.BooleanKeyword)]))),
|
|
265
|
+
factory.createTypeLiteralNode([
|
|
266
|
+
factory.createPropertySignature(undefined, factory.createIdentifier('label'), undefined, factory.createLiteralTypeNode(factory.createStringLiteral(def.label))),
|
|
267
|
+
factory.createPropertySignature(undefined, factory.createIdentifier('name'), undefined, factory.createLiteralTypeNode(factory.createStringLiteral(def.name)))
|
|
268
|
+
])
|
|
269
|
+
]));
|
|
270
|
+
}
|
|
271
|
+
createDriverGetDeclaration(def) {
|
|
272
|
+
return factory.createGetAccessorDeclaration([factory.createToken(ts.SyntaxKind.PublicKeyword)], factory.createIdentifier(def.name), [], NodeClassFactory.instance.createUnionTypeNode(...Object.values(def.dataType).map((p) => NodeClassFactory.instance.createDriverPropertyReturnType(p, def))), factory.createBlock([
|
|
273
|
+
factory.createReturnStatement(factory.createPropertyAccessChain(factory.createPropertyAccessExpression(factory.createPropertyAccessExpression(factory.createThis(), factory.createIdentifier('drivers')), factory.createIdentifier(def.id)), factory.createToken(ts.SyntaxKind.QuestionDotToken), factory.createIdentifier('value')))
|
|
274
|
+
], true));
|
|
275
|
+
}
|
|
276
|
+
createDriverInitializationStatement(def) {
|
|
277
|
+
return factory.createExpressionStatement(factory.createBinaryExpression(factory.createPropertyAccessExpression(factory.createPropertyAccessExpression(factory.createThis(), factory.createIdentifier('drivers')), factory.createIdentifier(def.id)), factory.createToken(ts.SyntaxKind.EqualsToken), factory.createCallExpression(factory.createPropertyAccessExpression(factory.createIdentifier('Driver'), factory.createIdentifier('create')), undefined, [
|
|
278
|
+
factory.createStringLiteral(def.id),
|
|
279
|
+
factory.createThis(),
|
|
280
|
+
factory.createAsExpression(factory.createPropertyAccessExpression(factory.createIdentifier('nodeInfo'), factory.createIdentifier('property')), factory.createTypeReferenceNode(factory.createIdentifier('DriverState'), undefined)),
|
|
281
|
+
factory.createObjectLiteralExpression([
|
|
282
|
+
factory.createPropertyAssignment(factory.createIdentifier('uom'), factory.createPropertyAccessExpression(factory.createIdentifier('UnitOfMeasure'), factory.createIdentifier(UnitOfMeasure[parseInt(Object.keys(def.dataType)[0])] ?? 'Unknown'))),
|
|
283
|
+
factory.createPropertyAssignment(factory.createIdentifier('label'), factory.createStringLiteral(def.label)),
|
|
284
|
+
factory.createPropertyAssignment(factory.createIdentifier('name'), factory.createStringLiteral(def.name))
|
|
285
|
+
], false)
|
|
286
|
+
])));
|
|
287
|
+
}
|
|
288
|
+
createDriverPropertyReturnType(def, parent) {
|
|
289
|
+
if (def.enum) {
|
|
290
|
+
{
|
|
291
|
+
if (EnumDefinitionMap.has(parent.classDef.family)) {
|
|
292
|
+
var enumDef = EnumDefinitionMap.get(parent.classDef.family)[def.indexId];
|
|
293
|
+
// ?? EnumDefinitionMap[Family.Global]?[def.indexId]
|
|
294
|
+
if (enumDef) {
|
|
295
|
+
return factory.createTypeReferenceNode(factory.createQualifiedName(factory.createIdentifier(Family[parent.classDef.family]), factory.createIdentifier(enumDef.name)), undefined);
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
if (def.values) {
|
|
299
|
+
return NodeClassFactory.instance.createUnionTypeNode(...Object.keys(def.values).map((p) => factory.createLiteralTypeNode(factory.createNumericLiteral(p))));
|
|
300
|
+
}
|
|
301
|
+
// return NodeClassFactory.instance.createUnionTypeNode(...
|
|
302
|
+
// Object.values(def.values).map((p) => factory.createTypeReferenceNode(
|
|
303
|
+
// factory.createQualifiedName(
|
|
304
|
+
// factory.createIdentifier("UnitOfMeasure"),
|
|
305
|
+
// factory.createIdentifier(UnitOfMeasure)
|
|
306
|
+
// ),
|
|
307
|
+
// undefined
|
|
308
|
+
// )))
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
return factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword);
|
|
312
|
+
}
|
|
313
|
+
createDriverSignature(def) {
|
|
314
|
+
return factory.createPropertySignature(undefined, factory.createIdentifier(def.id), undefined, factory.createTypeLiteralNode([
|
|
315
|
+
factory.createPropertySignature(undefined, factory.createIdentifier('uom'), undefined, def.dataType ?
|
|
316
|
+
NodeClassFactory.instance.createUnionTypeNode(...Object.values(def.dataType).map((p) => NodeClassFactory.instance.createTypeNodeForUOM(p.uom)))
|
|
317
|
+
: factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword)),
|
|
318
|
+
factory.createPropertySignature(undefined, factory.createIdentifier('value'), undefined, def.dataType ?
|
|
319
|
+
NodeClassFactory.instance.createUnionTypeNode(...Object.values(def.dataType).map((p) => NodeClassFactory.instance.createDriverSignatureReturnType(p, def)))
|
|
320
|
+
: factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword)),
|
|
223
321
|
factory.createPropertySignature(undefined, factory.createIdentifier('label'), undefined, factory.createLiteralTypeNode(factory.createStringLiteral(def.label))),
|
|
224
322
|
factory.createPropertySignature(undefined, factory.createIdentifier('name'), undefined, factory.createLiteralTypeNode(factory.createStringLiteral(def.name)))
|
|
225
|
-
])
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
return factory.createGetAccessorDeclaration([factory.createToken(ts.SyntaxKind.PublicKeyword)], factory.createIdentifier(def.name), [], factory.createUnionTypeNode(Object.values(def.dataType).map((p) => createDriverPropertyReturnType(p, def))), factory.createBlock([
|
|
230
|
-
factory.createReturnStatement(factory.createPropertyAccessChain(factory.createPropertyAccessExpression(factory.createPropertyAccessExpression(factory.createThis(), factory.createIdentifier('drivers')), factory.createIdentifier(def.id)), factory.createToken(ts.SyntaxKind.QuestionDotToken), factory.createIdentifier('value')))
|
|
231
|
-
], true));
|
|
232
|
-
}
|
|
233
|
-
function createDriverInitializationStatement(def) {
|
|
234
|
-
return factory.createExpressionStatement(factory.createBinaryExpression(factory.createPropertyAccessExpression(factory.createPropertyAccessExpression(factory.createThis(), factory.createIdentifier('drivers')), factory.createIdentifier(def.id)), factory.createToken(ts.SyntaxKind.EqualsToken), factory.createCallExpression(factory.createPropertyAccessExpression(factory.createIdentifier('Driver'), factory.createIdentifier('create')), undefined, [
|
|
235
|
-
factory.createStringLiteral(def.id),
|
|
236
|
-
factory.createThis(),
|
|
237
|
-
factory.createAsExpression(factory.createPropertyAccessExpression(factory.createIdentifier('nodeInfo'), factory.createIdentifier('property')), factory.createTypeReferenceNode(factory.createIdentifier('DriverState'), undefined)),
|
|
238
|
-
factory.createObjectLiteralExpression([
|
|
239
|
-
factory.createPropertyAssignment(factory.createIdentifier('uom'), factory.createPropertyAccessExpression(factory.createIdentifier('UnitOfMeasure'), factory.createIdentifier(UnitOfMeasure[parseInt(Object.keys(def.dataType)[0])] ?? 'Unknown'))),
|
|
240
|
-
factory.createPropertyAssignment(factory.createIdentifier('label'), factory.createStringLiteral(def.label)),
|
|
241
|
-
factory.createPropertyAssignment(factory.createIdentifier('name'), factory.createStringLiteral(def.name))
|
|
242
|
-
], false)
|
|
243
|
-
])));
|
|
244
|
-
}
|
|
245
|
-
function createDriverPropertyReturnType(def, parent) {
|
|
246
|
-
if (def.enum) {
|
|
247
|
-
{
|
|
323
|
+
]));
|
|
324
|
+
}
|
|
325
|
+
createDriverSignatureReturnType(def, parent) {
|
|
326
|
+
if (def.enum) {
|
|
248
327
|
if (EnumDefinitionMap.has(parent.classDef.family)) {
|
|
249
328
|
var enumDef = EnumDefinitionMap.get(parent.classDef.family)[def.indexId];
|
|
250
329
|
// ?? EnumDefinitionMap[Family.Global]?[def.indexId]
|
|
@@ -253,51 +332,25 @@ function createDriverPropertyReturnType(def, parent) {
|
|
|
253
332
|
}
|
|
254
333
|
}
|
|
255
334
|
if (def.values) {
|
|
256
|
-
return
|
|
335
|
+
return NodeClassFactory.instance.createUnionTypeNode(...Object.keys(def.values).map((p) => factory.createLiteralTypeNode(factory.createNumericLiteral(p))));
|
|
257
336
|
}
|
|
258
|
-
// return factory.createUnionTypeNode(
|
|
259
|
-
// Object.values(def.values).map((p) => factory.createTypeReferenceNode(
|
|
260
|
-
// factory.createQualifiedName(
|
|
261
|
-
// factory.createIdentifier("UnitOfMeasure"),
|
|
262
|
-
// factory.createIdentifier(UnitOfMeasure)
|
|
263
|
-
// ),
|
|
264
|
-
// undefined
|
|
265
|
-
// )))
|
|
266
337
|
}
|
|
338
|
+
return factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword);
|
|
267
339
|
}
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
factory.
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
if (EnumDefinitionMap.has(parent.classDef.family)) {
|
|
281
|
-
var enumDef = EnumDefinitionMap.get(parent.classDef.family)[def.indexId];
|
|
282
|
-
// ?? EnumDefinitionMap[Family.Global]?[def.indexId]
|
|
283
|
-
if (enumDef) {
|
|
284
|
-
return factory.createTypeReferenceNode(factory.createQualifiedName(factory.createIdentifier(Family[parent.classDef.family]), factory.createIdentifier(enumDef.name)), undefined);
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
if (def.values) {
|
|
288
|
-
return factory.createUnionTypeNode(Object.keys(def.values).map((p) => factory.createLiteralTypeNode(factory.createNumericLiteral(p))));
|
|
289
|
-
}
|
|
340
|
+
createParameterDeclarationSignature(def) {
|
|
341
|
+
return factory.createParameterDeclaration(undefined, undefined, factory.createIdentifier(def.name ?? 'value'), def.optional ? factory.createToken(ts.SyntaxKind.QuestionToken) : undefined, def.dataType ?
|
|
342
|
+
NodeClassFactory.instance.createUnionTypeNode(...Object.values(def.dataType).map((p) => NodeClassFactory.instance.createCommandParameterType(p, def)))
|
|
343
|
+
: factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword), undefined);
|
|
344
|
+
}
|
|
345
|
+
createParameterSignature(def) {
|
|
346
|
+
return factory.createParameterDeclaration(undefined, undefined, factory.createIdentifier(def.id ?? 'value'), def.optional ? factory.createToken(ts.SyntaxKind.QuestionToken) : undefined, def.dataType ?
|
|
347
|
+
NodeClassFactory.instance.createUnionTypeNode(...Object.values(def.dataType).map((p) => NodeClassFactory.instance.createCommandParameterType(p, def)))
|
|
348
|
+
: factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword), undefined);
|
|
349
|
+
}
|
|
350
|
+
createTypeNodeForUOM(uom) {
|
|
351
|
+
return NodeClassFactory.instance.createTypeReferenceNode(UnitOfMeasure[uom] ?? 'Unknown', 'UnitOfMeasure');
|
|
290
352
|
}
|
|
291
|
-
return factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword);
|
|
292
|
-
}
|
|
293
|
-
function createParameterDeclarationSignature(def) {
|
|
294
|
-
return factory.createParameterDeclaration(undefined, undefined, factory.createIdentifier(def.name ?? 'value'), def.optional ? factory.createToken(ts.SyntaxKind.QuestionToken) : undefined, def.dataType ? factory.createUnionTypeNode(Object.values(def.dataType).map((p) => createCommandParameterType(p, def))) : factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword), undefined);
|
|
295
|
-
}
|
|
296
|
-
function createParameterSignature(def) {
|
|
297
|
-
return factory.createParameterDeclaration(undefined, undefined, factory.createIdentifier(def.id ?? 'value'), def.optional ? factory.createToken(ts.SyntaxKind.QuestionToken) : undefined, def.dataType ? factory.createUnionTypeNode(Object.values(def.dataType).map((p) => createCommandParameterType(p, def))) : factory.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword), undefined);
|
|
298
|
-
}
|
|
299
|
-
function createTypeNodeForUOM(uom) {
|
|
300
|
-
return factory.createTypeReferenceNode(factory.createQualifiedName(factory.createIdentifier('UnitOfMeasure'), factory.createIdentifier(UnitOfMeasure[uom] ?? 'Unknown')));
|
|
301
353
|
}
|
|
354
|
+
// #endregion Classes (1)
|
|
302
355
|
// #endregion Functions (12)
|
|
303
356
|
//# sourceMappingURL=NodeClassFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeClassFactory.js","sourceRoot":"","sources":["../../../src/CodeGeneration/NodeClassFactory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NodeClassFactory.js","sourceRoot":"","sources":["../../../src/CodeGeneration/NodeClassFactory.ts"],"names":[],"mappings":"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"}
|