isy-nodejs 1.0.1-alpha.26 → 1.0.1-alpha.28
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/cjs/CodeGeneration/EnumFactory.js +6 -6
- package/dist/cjs/CodeGeneration/EnumFactory.js.map +1 -1
- package/dist/cjs/CodeGeneration/NodeClassFactory.js +7 -7
- package/dist/cjs/CodeGeneration/NodeClassFactory.js.map +1 -1
- package/dist/cjs/Converters.js +10 -13
- package/dist/cjs/Converters.js.map +1 -1
- package/dist/cjs/Definitions/Global/Commands.js.map +1 -1
- package/dist/cjs/Devices/ISYDeviceNode.js.map +1 -1
- package/dist/cjs/Devices/Insteon/DimmerLampSwitch.js +2 -2
- package/dist/cjs/Devices/Insteon/DimmerLampSwitch.js.map +1 -1
- package/dist/cjs/Devices/Insteon/InsteonDevice.js.map +1 -1
- package/dist/cjs/Devices/Insteon/InsteonDeviceFactory.js +12 -8
- package/dist/cjs/Devices/Insteon/InsteonDeviceFactory.js.map +1 -1
- package/dist/cjs/Devices/Insteon/InsteonKeypadDevice.js +2 -2
- package/dist/cjs/Devices/Insteon/InsteonKeypadDevice.js.map +1 -1
- package/dist/cjs/Devices/Insteon/KeypadButton.js +52 -0
- package/dist/cjs/Devices/Insteon/KeypadButton.js.map +1 -0
- package/dist/cjs/Devices/Insteon/RelayLampSwitch.js +5 -5
- package/dist/cjs/Devices/Insteon/RelayLampSwitch.js.map +1 -1
- package/dist/cjs/Devices/NodeFactory.js +5 -4
- package/dist/cjs/Devices/NodeFactory.js.map +1 -1
- package/dist/cjs/Devices/index.js.map +1 -1
- package/dist/cjs/ISY.js +220 -213
- package/dist/cjs/ISY.js.map +1 -1
- package/dist/cjs/ISYNode.js +3 -3
- package/dist/cjs/ISYNode.js.map +1 -1
- package/dist/cjs/ISYScene.js +1 -1
- package/dist/cjs/ISYScene.js.map +1 -1
- package/dist/cjs/Matter/Behaviors/ISYBridgedDeviceBehavior.js.map +1 -1
- package/dist/cjs/Matter/Behaviors/ISYClusterBehavior.js +7 -5
- package/dist/cjs/Matter/Behaviors/ISYClusterBehavior.js.map +1 -1
- package/dist/cjs/Matter/Behaviors/ISYOnOffBehavior.js +1 -1
- package/dist/cjs/Matter/Behaviors/ISYOnOffBehavior.js.map +1 -1
- package/dist/cjs/Matter/Behaviors/Insteon/ISYOnOffBehavior.js +47 -0
- package/dist/cjs/Matter/Behaviors/Insteon/ISYOnOffBehavior.js.map +1 -0
- package/dist/cjs/Matter/Bridge/Server.js +5 -5
- package/dist/cjs/Matter/Bridge/Server.js.map +1 -1
- package/dist/cjs/Matter/Mappings/Insteon.js +3 -4
- package/dist/cjs/Matter/Mappings/Insteon.js.map +1 -1
- package/dist/cjs/Model/ClusterMap.js +2 -2
- package/dist/cjs/Model/ClusterMap.js.map +1 -1
- package/dist/cjs/Model/NodeInfo.js +3 -3
- package/dist/cjs/Model/NodeInfo.js.map +1 -1
- package/dist/cjs/Utils.js.map +1 -1
- package/dist/cjs/types/CodeGeneration/EnumFactory.d.ts +1 -1
- package/dist/cjs/types/CodeGeneration/EnumFactory.d.ts.map +1 -1
- package/dist/cjs/types/CodeGeneration/NodeClassFactory.d.ts +1 -1
- package/dist/cjs/types/CodeGeneration/NodeClassFactory.d.ts.map +1 -1
- package/dist/cjs/types/Converters.d.ts +15 -2
- package/dist/cjs/types/Converters.d.ts.map +1 -1
- package/dist/cjs/types/Definitions/Global/Commands.d.ts +1 -1
- package/dist/cjs/types/Definitions/Global/Commands.d.ts.map +1 -1
- package/dist/cjs/types/Devices/EndpointFor.d.ts +1 -1
- package/dist/cjs/types/Devices/ISYDeviceNode.d.ts +2 -1
- package/dist/cjs/types/Devices/ISYDeviceNode.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Insteon/DimmerLampSwitch.d.ts +1 -1
- package/dist/cjs/types/Devices/Insteon/DimmerLampSwitch.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Insteon/InsteonDevice.d.ts +8 -7
- package/dist/cjs/types/Devices/Insteon/InsteonDevice.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Insteon/InsteonDeviceFactory.d.ts +2 -1
- package/dist/cjs/types/Devices/Insteon/InsteonDeviceFactory.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Insteon/InsteonFanDevice.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Insteon/InsteonKeypadDevice.d.ts +4 -4
- package/dist/cjs/types/Devices/Insteon/InsteonKeypadDevice.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Insteon/InsteonRelayDevice.d.ts.map +1 -1
- package/dist/cjs/types/Devices/Insteon/KeypadButton.d.ts +63 -0
- package/dist/cjs/types/Devices/Insteon/KeypadButton.d.ts.map +1 -0
- package/dist/cjs/types/Devices/Insteon/RelayLampSwitch.d.ts +32 -32
- package/dist/cjs/types/Devices/Insteon/RelayLampSwitch.d.ts.map +1 -1
- package/dist/cjs/types/Devices/NodeFactory.d.ts +2 -1
- package/dist/cjs/types/Devices/NodeFactory.d.ts.map +1 -1
- package/dist/cjs/types/Devices/index.d.ts +1 -1
- package/dist/cjs/types/Devices/index.d.ts.map +1 -1
- package/dist/cjs/types/ISY.d.ts +13 -28
- package/dist/cjs/types/ISY.d.ts.map +1 -1
- package/dist/cjs/types/ISYDevice.d.ts +1 -1
- package/dist/cjs/types/ISYDevice.d.ts.map +1 -1
- package/dist/cjs/types/ISYNode.d.ts +4 -2
- package/dist/cjs/types/ISYNode.d.ts.map +1 -1
- package/dist/cjs/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts +1 -1
- package/dist/cjs/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts.map +1 -1
- package/dist/cjs/types/Matter/Behaviors/ISYClusterBehavior.d.ts.map +1 -1
- package/dist/cjs/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts +54 -0
- package/dist/cjs/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts.map +1 -0
- package/dist/cjs/types/Matter/Bridge/Server.d.ts.map +1 -1
- package/dist/cjs/types/Model/ClusterMap.d.ts +1 -1
- package/dist/cjs/types/Model/ClusterMap.d.ts.map +1 -1
- package/dist/cjs/types/Model/EnumDefinition.d.ts +1 -1
- package/dist/cjs/types/Model/NodeInfo.d.ts +2 -2
- package/dist/cjs/types/Model/NodeInfo.d.ts.map +1 -1
- package/dist/cjs/types/Utils.d.ts +8 -1
- package/dist/cjs/types/Utils.d.ts.map +1 -1
- package/dist/esm/CodeGeneration/EnumFactory.js +1 -1
- package/dist/esm/CodeGeneration/EnumFactory.js.map +1 -1
- package/dist/esm/CodeGeneration/NodeClassFactory.js +1 -1
- package/dist/esm/CodeGeneration/NodeClassFactory.js.map +1 -1
- package/dist/esm/Converters.js +10 -13
- package/dist/esm/Converters.js.map +1 -1
- package/dist/esm/Definitions/Global/Commands.js.map +1 -1
- package/dist/esm/Devices/ISYDeviceNode.js.map +1 -1
- package/dist/esm/Devices/Insteon/DimmerLampSwitch.js +2 -2
- package/dist/esm/Devices/Insteon/DimmerLampSwitch.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonDeviceFactory.js +5 -1
- package/dist/esm/Devices/Insteon/InsteonDeviceFactory.js.map +1 -1
- package/dist/esm/Devices/Insteon/InsteonKeypadDevice.js +2 -2
- package/dist/esm/Devices/Insteon/InsteonKeypadDevice.js.map +1 -1
- package/dist/esm/Devices/Insteon/KeypadButton.js +48 -0
- package/dist/esm/Devices/Insteon/KeypadButton.js.map +1 -0
- package/dist/esm/Devices/Insteon/RelayLampSwitch.js +7 -7
- package/dist/esm/Devices/Insteon/RelayLampSwitch.js.map +1 -1
- package/dist/esm/Devices/NodeFactory.js +2 -1
- package/dist/esm/Devices/NodeFactory.js.map +1 -1
- package/dist/esm/Devices/index.js.map +1 -1
- package/dist/esm/ISY.js +220 -183
- package/dist/esm/ISY.js.map +1 -1
- package/dist/esm/ISYNode.js +2 -2
- package/dist/esm/ISYNode.js.map +1 -1
- package/dist/esm/ISYScene.js +1 -1
- package/dist/esm/ISYScene.js.map +1 -1
- package/dist/esm/Matter/Behaviors/ISYBridgedDeviceBehavior.js.map +1 -1
- package/dist/esm/Matter/Behaviors/ISYClusterBehavior.js +7 -5
- package/dist/esm/Matter/Behaviors/ISYClusterBehavior.js.map +1 -1
- package/dist/esm/Matter/Behaviors/ISYOnOffBehavior.js +1 -1
- package/dist/esm/Matter/Behaviors/ISYOnOffBehavior.js.map +1 -1
- package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js +42 -0
- package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js.map +1 -0
- package/dist/esm/Matter/Bridge/Server.js +6 -6
- package/dist/esm/Matter/Bridge/Server.js.map +1 -1
- package/dist/esm/Matter/Mappings/Insteon.js +3 -4
- package/dist/esm/Matter/Mappings/Insteon.js.map +1 -1
- package/dist/esm/Model/ClusterMap.js +2 -2
- 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/EnumFactory.d.ts +1 -1
- package/dist/esm/types/CodeGeneration/EnumFactory.d.ts.map +1 -1
- package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts +1 -1
- package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts.map +1 -1
- package/dist/esm/types/Converters.d.ts +15 -2
- package/dist/esm/types/Converters.d.ts.map +1 -1
- package/dist/esm/types/Definitions/Global/Commands.d.ts +1 -1
- package/dist/esm/types/Definitions/Global/Commands.d.ts.map +1 -1
- package/dist/esm/types/Devices/EndpointFor.d.ts +1 -1
- package/dist/esm/types/Devices/ISYDeviceNode.d.ts +2 -1
- package/dist/esm/types/Devices/ISYDeviceNode.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/DimmerLampSwitch.d.ts +1 -1
- package/dist/esm/types/Devices/Insteon/DimmerLampSwitch.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts +8 -7
- package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonDeviceFactory.d.ts +2 -1
- package/dist/esm/types/Devices/Insteon/InsteonDeviceFactory.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts.map +1 -1
- package/dist/esm/types/Devices/Insteon/InsteonKeypadDevice.d.ts +4 -4
- package/dist/esm/types/Devices/Insteon/InsteonKeypadDevice.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 +63 -0
- package/dist/esm/types/Devices/Insteon/KeypadButton.d.ts.map +1 -0
- package/dist/esm/types/Devices/Insteon/RelayLampSwitch.d.ts +32 -32
- package/dist/esm/types/Devices/Insteon/RelayLampSwitch.d.ts.map +1 -1
- package/dist/esm/types/Devices/NodeFactory.d.ts +2 -1
- package/dist/esm/types/Devices/NodeFactory.d.ts.map +1 -1
- package/dist/esm/types/Devices/index.d.ts +1 -1
- package/dist/esm/types/Devices/index.d.ts.map +1 -1
- package/dist/esm/types/ISY.d.ts +13 -28
- package/dist/esm/types/ISY.d.ts.map +1 -1
- package/dist/esm/types/ISYDevice.d.ts +1 -1
- package/dist/esm/types/ISYDevice.d.ts.map +1 -1
- package/dist/esm/types/ISYNode.d.ts +4 -2
- package/dist/esm/types/ISYNode.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts +1 -1
- package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts.map +1 -1
- package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts +54 -0
- package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts.map +1 -0
- package/dist/esm/types/Matter/Bridge/Server.d.ts.map +1 -1
- package/dist/esm/types/Model/ClusterMap.d.ts +1 -1
- 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/Model/NodeInfo.d.ts +2 -2
- package/dist/esm/types/Model/NodeInfo.d.ts.map +1 -1
- package/dist/esm/types/Utils.d.ts +8 -1
- package/dist/esm/types/Utils.d.ts.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/CodeGeneration/EnumFactory.ts +2 -1
- package/src/CodeGeneration/NodeClassFactory.ts +2 -1
- package/src/Converters.ts +18 -24
- package/src/Definitions/Global/Commands.ts +13 -1
- package/src/Definitions/Global/Events.ts +2 -2
- package/src/Devices/ISYDeviceNode.ts +2 -1
- package/src/Devices/ISYMultiNodeDevice.ts +1 -1
- package/src/Devices/Insteon/DimmerLampSwitch.ts +3 -3
- package/src/Devices/Insteon/Generated/DimmerLampSwitch.ts +8 -7
- package/src/Devices/Insteon/InsteonDevice.ts +3 -2
- package/src/Devices/Insteon/InsteonDeviceFactory.ts +7 -2
- package/src/Devices/Insteon/InsteonFanDevice.ts +1 -1
- package/src/Devices/Insteon/InsteonKeypadDevice.ts +5 -5
- package/src/Devices/Insteon/InsteonRelayDevice.ts +1 -1
- package/src/Devices/Insteon/{Generated/KeypadButton.ts → KeypadButton.ts} +20 -20
- package/src/Devices/Insteon/RelayLampSwitch.ts +39 -39
- package/src/Devices/NodeFactory.ts +3 -2
- package/src/Devices/ZWave/ZWaveDimmerSwitchDevice.ts +1 -1
- package/src/Devices/index.ts +2 -2
- package/src/ISY.ts +249 -228
- package/src/ISYDevice.ts +3 -2
- package/src/ISYNode.ts +7 -5
- package/src/ISYScene.ts +2 -2
- package/src/Matter/Behaviors/ISYBridgedDeviceBehavior.ts +12 -2
- package/src/Matter/Behaviors/ISYClusterBehavior.ts +11 -14
- package/src/Matter/Behaviors/{ISYOnOffBehavior.ts → Insteon/ISYOnOffBehavior.ts} +9 -14
- package/src/Matter/Bridge/Server.ts +9 -7
- package/src/Matter/Mappings/Insteon.ts +3 -3
- package/src/Model/ClusterMap.ts +4 -3
- package/src/Model/NodeInfo.ts +4 -3
- package/src/Utils.ts +13 -6
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "isy-nodejs",
|
|
3
3
|
"description": "Node.js wrapper for ISY interface including websockets for change notifications. Fork of isy-js by Rod Toll. Designed to be used in a node.js application.",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"version": "1.0.1-alpha.
|
|
5
|
+
"version": "1.0.1-alpha.28",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Pradeep Mouli"
|
|
8
8
|
},
|
|
@@ -69,5 +69,5 @@
|
|
|
69
69
|
"publishConfig": {
|
|
70
70
|
"access": "public"
|
|
71
71
|
},
|
|
72
|
-
"gitHead": "
|
|
72
|
+
"gitHead": "8db16499c0e5d154bfa3d13ccf0d31409abbb4ae"
|
|
73
73
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { factory } from "typescript";
|
|
2
2
|
import { createWrappedNode, ts, type EnumDeclaration, EnumMember, Identifier } from 'ts-morph'
|
|
3
3
|
import { UnitOfMeasure } from "../Definitions/Global/UOM.js";
|
|
4
|
-
|
|
4
|
+
|
|
5
5
|
import type {
|
|
6
6
|
NodeClassDefinition,
|
|
7
7
|
DriverDefinition,
|
|
@@ -12,6 +12,7 @@ import { EnumDefinition, EnumDefinitionMap } from "../Model/EnumDefinition.js";
|
|
|
12
12
|
import { isGeneratorFunction } from "util/types";
|
|
13
13
|
import { Logger, loggers } from "winston";
|
|
14
14
|
import { pascalCase } from 'moderndash';
|
|
15
|
+
import { Family } from '../Definitions/index.js';
|
|
15
16
|
|
|
16
17
|
|
|
17
18
|
const logger = loggers.get("EnumFactory");
|
|
@@ -2,9 +2,10 @@ import { createWrappedNode, IndentationText, Project, QuoteKind, SourceFile, ts,
|
|
|
2
2
|
import { factory, Statement, type Declaration } from 'typescript';
|
|
3
3
|
import type { Driver } from '../Definitions/Global/Drivers.js';
|
|
4
4
|
import { UnitOfMeasure } from '../Definitions/Global/UOM.js';
|
|
5
|
-
|
|
5
|
+
|
|
6
6
|
import { CommandDefinition, DataTypeDefinition, DriverDefinition, NodeClassDefinition, ParameterDefinition } from '../Model/ClassDefinition.js';
|
|
7
7
|
import { EnumDefinitionMap } from '../Model/EnumDefinition.js';
|
|
8
|
+
import { Family } from '../Definitions/index.js';
|
|
8
9
|
|
|
9
10
|
// #region Type aliases (1)
|
|
10
11
|
|
package/src/Converters.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
|
|
2
1
|
import { UnitOfMeasure } from './Definitions/Global/UOM.js';
|
|
3
2
|
import { type StringKeys } from './Utils.js';
|
|
4
3
|
|
|
@@ -9,26 +8,21 @@ let NullConverter: Converter<any, any>;
|
|
|
9
8
|
from: (value: any) => value;
|
|
10
9
|
}
|
|
11
10
|
|
|
12
|
-
|
|
13
|
-
to: (value: number): boolean => {
|
|
14
|
-
return value > 0;
|
|
15
|
-
},
|
|
16
|
-
from: (value: boolean): number => {
|
|
17
|
-
return value ? 100 : 0;
|
|
18
|
-
}
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
const StandardConverters: {
|
|
22
|
-
[x in `${keyof typeof UnitOfMeasure}`]?: { [y in `${keyof typeof UnitOfMeasure}`]?: Converter<any, any> };
|
|
23
|
-
} = {
|
|
11
|
+
const StandardConverters = {
|
|
24
12
|
Boolean: {
|
|
25
13
|
LevelFrom0To255: {
|
|
26
14
|
to: (value: boolean) => (value ? 255 : 0),
|
|
27
15
|
from: (value: number) => value > 0
|
|
28
16
|
},
|
|
29
|
-
Percent:
|
|
17
|
+
Percent: {
|
|
18
|
+
to: (value: number): boolean => {
|
|
19
|
+
return value > 0;
|
|
20
|
+
},
|
|
21
|
+
from: (value: boolean): number => {
|
|
22
|
+
return value ? 100 : 0;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
30
25
|
},
|
|
31
|
-
Percent: {},
|
|
32
26
|
LevelFrom0To255: {
|
|
33
27
|
Percent: {
|
|
34
28
|
to: (value: number): number => {
|
|
@@ -41,8 +35,8 @@ const StandardConverters: {
|
|
|
41
35
|
}
|
|
42
36
|
};
|
|
43
37
|
|
|
44
|
-
StandardConverters.Percent.LevelFrom0To255 = invert(StandardConverters.LevelFrom0To255.Percent);
|
|
45
|
-
StandardConverters.LevelFrom0To255.Boolean = invert(StandardConverters.Boolean.LevelFrom0To255);
|
|
38
|
+
//StandardConverters.Percent.LevelFrom0To255 = invert(StandardConverters.LevelFrom0To255.Percent);
|
|
39
|
+
//StandardConverters.LevelFrom0To255.Boolean = invert(StandardConverters.Boolean.LevelFrom0To255);
|
|
46
40
|
|
|
47
41
|
export const StdConverterRegistry = new Map<UnitOfMeasure | string, Map<UnitOfMeasure | string, Converter<any, any>>>();
|
|
48
42
|
|
|
@@ -94,6 +88,7 @@ export namespace Converter {
|
|
|
94
88
|
: value === 255 ? 254
|
|
95
89
|
: value
|
|
96
90
|
}
|
|
91
|
+
|
|
97
92
|
}
|
|
98
93
|
};
|
|
99
94
|
|
|
@@ -108,7 +103,7 @@ export namespace Converter {
|
|
|
108
103
|
export type MatterConverters = `${MatterISYConvertibleTypes}.${ISYMatterConvertibleTypes}` | `${ISYMatterConvertibleTypes}.${MatterISYConvertibleTypes}`;
|
|
109
104
|
|
|
110
105
|
export type KnownConverters = StandardConverters | MatterConverters;
|
|
111
|
-
const cache
|
|
106
|
+
const cache: { [x: string]: Converter<any, any> } = {};
|
|
112
107
|
export function get(label: KnownConverters): Converter<any, any>;
|
|
113
108
|
export function get(from: UnitOfMeasure, to: UnitOfMeasure);
|
|
114
109
|
export function get(from: ConverterTypes, to: ConverterTypes);
|
|
@@ -116,23 +111,22 @@ export namespace Converter {
|
|
|
116
111
|
export function get(from: MatterISYConvertibleTypes, to: ISYMatterConvertibleTypes);
|
|
117
112
|
export function get(to: ISYMatterConvertibleTypes, from: MatterISYConvertibleTypes);
|
|
118
113
|
export function get(from: UnitOfMeasure | `${keyof typeof UnitOfMeasure}` | string, to?: UnitOfMeasure | `${keyof typeof UnitOfMeasure}` | string): Converter<any, any> {
|
|
119
|
-
if(to === undefined) {
|
|
114
|
+
if (to === undefined) {
|
|
120
115
|
return ConverterRegistry.get(from as string) ?? NullConverter;
|
|
121
116
|
}
|
|
122
|
-
if(cache[`${from}.${to}`]) {
|
|
117
|
+
if (cache[`${from}.${to}`]) {
|
|
123
118
|
return cache[`${from}.${to}`];
|
|
124
|
-
}
|
|
125
|
-
else if(cache[`${to}.${from}`]) {
|
|
119
|
+
} else if (cache[`${to}.${from}`]) {
|
|
126
120
|
cache[`${from}.${to}`] = invert(cache[`${to}.${from}`]);
|
|
127
121
|
return cache[`${from}.${to}`];
|
|
128
122
|
}
|
|
129
123
|
let isString = typeof from === 'string';
|
|
130
124
|
let fuom = isString ? from : UnitOfMeasure[from];
|
|
131
125
|
if (to) {
|
|
132
|
-
let tuom = typeof to === 'string' ? to : UnitOfMeasure[to];
|
|
126
|
+
let tuom = typeof to === 'string' ? to : UnitOfMeasure[to];
|
|
133
127
|
|
|
134
128
|
if (StdConverterRegistry.has(fuom)) {
|
|
135
|
-
if(StdConverterRegistry.get(fuom).has(tuom)) {
|
|
129
|
+
if (StdConverterRegistry.get(fuom).has(tuom)) {
|
|
136
130
|
return StdConverterRegistry.get(fuom).get(tuom);
|
|
137
131
|
}
|
|
138
132
|
}
|
|
@@ -1,10 +1,22 @@
|
|
|
1
1
|
import { TimeFormatLocalization } from '@project-chip/matter.js/cluster';
|
|
2
2
|
import type { Identity, Merge, UnionToIntersection } from '@project-chip/matter.js/util';
|
|
3
3
|
import type { Sign } from 'crypto';
|
|
4
|
+
import type { UnitOfMeasure } from './UOM.js';
|
|
5
|
+
|
|
6
|
+
/*export class Command<T extends string> extends Function {
|
|
7
|
+
|
|
8
|
+
constructor(public readonly label: string) {
|
|
9
|
+
super();
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
public async execute(...args: any[]): Promise<Boolean> {
|
|
13
|
+
return this(...args);
|
|
14
|
+
}
|
|
15
|
+
}*/
|
|
4
16
|
|
|
5
17
|
export namespace Command {
|
|
6
18
|
|
|
7
|
-
export type Signature<F extends {name
|
|
19
|
+
export type Signature<F extends {name} = CallableFunction, L extends string = string,N extends string = string> = F & {label: L, name: N,} ;
|
|
8
20
|
|
|
9
21
|
export type Signatures<C extends string> = {[K in C]: Signature<(...args: any[]) => Promise<Boolean>, string, string>};
|
|
10
22
|
|
|
@@ -3,7 +3,7 @@ import type { AnyMxRecord } from 'dns';
|
|
|
3
3
|
import EventEmitter, { on } from 'events';
|
|
4
4
|
import type { EventType } from '../../Events/EventType.js';
|
|
5
5
|
import { ISYEvent } from '../../Events/ISYEvent.js';
|
|
6
|
-
import type {
|
|
6
|
+
import type { ISY } from '../../ISY.js';
|
|
7
7
|
import type { ISYNode } from '../../ISYNode.js';
|
|
8
8
|
import type { UnitOfMeasure } from './UOM.js';
|
|
9
9
|
|
|
@@ -63,7 +63,7 @@ export namespace Event {
|
|
|
63
63
|
): FunctionSigFor<E, NodeEventEmitter<N>> & Omit<NodeEventEmitter<N>, 'on'> {
|
|
64
64
|
var f = new NodeEventEmitter(node);
|
|
65
65
|
for (let evt in node.drivers) {
|
|
66
|
-
|
|
66
|
+
|
|
67
67
|
//f[`on${ev.name}`] = f.on.bind(f, ev.name);
|
|
68
68
|
}
|
|
69
69
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
import type { Driver } from '../Definitions/Global/Drivers.js';
|
|
3
|
-
import {
|
|
3
|
+
import {type ISY } from '../ISY.js';
|
|
4
4
|
import type { ISYDevice } from '../ISYDevice.js';
|
|
5
5
|
import { ISYNode} from '../ISYNode.js';
|
|
6
6
|
import type { ISYScene } from '../ISYScene.js';
|
|
@@ -10,6 +10,7 @@ import type { Category } from '../Definitions/Global/Categories.js';
|
|
|
10
10
|
import type { Command } from '../Definitions/Global/Commands.js';
|
|
11
11
|
import type { Event } from '../Definitions/Global/Events.js';
|
|
12
12
|
import type { StringKeys } from '../Utils.js';
|
|
13
|
+
import type { Family } from '../Definitions/index.js';
|
|
13
14
|
|
|
14
15
|
|
|
15
16
|
export class ISYDeviceNode<
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
//import type { UnionToIntersection } from '@project-chip/matter-node.js/util.js';
|
|
2
2
|
import type { Driver } from '../Definitions/Global/Drivers.js';
|
|
3
3
|
import type { UnitOfMeasure } from '../Definitions/Global/UOM.js';
|
|
4
|
-
|
|
4
|
+
|
|
5
5
|
import type { ISYDevice } from '../ISYDevice.js';
|
|
6
6
|
import type { DriverMap, ISYNode, NodeList } from '../ISYNode.js';
|
|
7
7
|
import type { ISYScene } from '../ISYScene.js';
|
|
@@ -39,13 +39,13 @@ export class DimmerLampSwitchNode extends Base<Drivers, Commands> implements Dim
|
|
|
39
39
|
declare readonly nodeDefId: 'DimmerLampSwitch';
|
|
40
40
|
constructor(isy: ISY, nodeInfo: NodeInfo) {
|
|
41
41
|
super(isy, nodeInfo);
|
|
42
|
-
this.drivers.ST = Driver.create('ST', this, nodeInfo.state['ST'], { uom: UnitOfMeasure.
|
|
42
|
+
this.drivers.ST = Driver.create('ST', this, nodeInfo.state['ST'], { uom: UnitOfMeasure.LevelFrom0To255, label: 'Status', name: 'status' });
|
|
43
43
|
this.drivers.OL = Driver.create('OL', this, nodeInfo.state['OL'] as DriverState, { uom: UnitOfMeasure.Percent, label: 'On Level', name: 'onLevel' });
|
|
44
44
|
this.drivers.RR = Driver.create('RR', this, nodeInfo.state['RR'] as DriverState, { uom: UnitOfMeasure.Index, label: 'Ramp Rate', name: 'rampRate' });
|
|
45
45
|
this.drivers.ERR = Driver.create('ERR', this, nodeInfo.state['ERR'] as DriverState, { uom: UnitOfMeasure.Index, label: 'Responding', name: 'responding' });
|
|
46
46
|
}
|
|
47
47
|
async on(value?: number) {
|
|
48
|
-
return this.sendCommand('DON',
|
|
48
|
+
return this.sendCommand('DON', value);
|
|
49
49
|
}
|
|
50
50
|
async off() {
|
|
51
51
|
return this.sendCommand('DOF');
|
|
@@ -180,7 +180,7 @@ export namespace DimmerLampSwitch {
|
|
|
180
180
|
};
|
|
181
181
|
export type Drivers = {
|
|
182
182
|
ST: {
|
|
183
|
-
uom: UnitOfMeasure.
|
|
183
|
+
uom: UnitOfMeasure.LevelFrom0To255;
|
|
184
184
|
value: number;
|
|
185
185
|
label: 'Status';
|
|
186
186
|
name: 'status';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
|
|
2
|
-
|
|
1
|
+
/* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
|
|
2
|
+
|
|
3
3
|
import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
|
|
4
4
|
import { Family } from "../../../Definitions/Global/Families.js";
|
|
5
5
|
import type { NodeInfo } from "../../../Model/NodeInfo.js";
|
|
@@ -11,12 +11,13 @@ import { Driver } from "../../../Definitions/Global/Drivers.js";
|
|
|
11
11
|
import { Insteon } from "../../../Definitions/index.js";
|
|
12
12
|
import type { DriverState } from "../../../Model/DriverState.js";
|
|
13
13
|
import { NodeFactory } from "../../NodeFactory.js";
|
|
14
|
-
|
|
14
|
+
import { validateHeaderName } from 'http';
|
|
15
|
+
|
|
15
16
|
export const nodeDefId = "DimmerLampSwitch";
|
|
16
|
-
|
|
17
|
+
|
|
17
18
|
type Commands = DimmerLampSwitch.Commands;
|
|
18
19
|
type Drivers = DimmerLampSwitch.Drivers;
|
|
19
|
-
|
|
20
|
+
|
|
20
21
|
export class DimmerLampSwitchNode extends Base<Drivers, Commands> implements DimmerLampSwitch.Interface {
|
|
21
22
|
public readonly commands = {
|
|
22
23
|
DON: this.on,
|
|
@@ -102,9 +103,9 @@ export class DimmerLampSwitchNode extends Base<Drivers, Commands> implements Dim
|
|
|
102
103
|
return this.drivers.ERR?.value;
|
|
103
104
|
}
|
|
104
105
|
}
|
|
105
|
-
|
|
106
|
+
|
|
106
107
|
NodeFactory.register(DimmerLampSwitchNode);
|
|
107
|
-
|
|
108
|
+
|
|
108
109
|
export namespace DimmerLampSwitch {
|
|
109
110
|
export interface Interface extends Omit<InstanceType<typeof DimmerLampSwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
110
111
|
nodeDefId: "DimmerLampSwitch";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ISY } from '../../ISY.js';
|
|
2
2
|
|
|
3
3
|
import { Insteon } from '../../Definitions/Global/Families.js';
|
|
4
4
|
import { Commands } from '../../ISYConstants.js'
|
|
@@ -6,6 +6,7 @@ import { Constructor } from '../Constructor.js';
|
|
|
6
6
|
import { InsteonKeypadButtonDevice } from './InsteonKeypadDevice.js';
|
|
7
7
|
import { InsteonRelayDevice } from './InsteonRelayDevice.js';
|
|
8
8
|
import 'winston';
|
|
9
|
+
import type { InsteonBaseDevice } from './InsteonBaseDevice.js';
|
|
9
10
|
|
|
10
11
|
export const InsteonLampDevice = <T extends Constructor<InsteonBaseDevice>>(IB: T) => (class extends IB {
|
|
11
12
|
declare isDimmable: boolean;
|
|
@@ -21,7 +22,7 @@ export const InsteonLampDevice = <T extends Constructor<InsteonBaseDevice>>(IB:
|
|
|
21
22
|
|
|
22
23
|
export const KeypadDevice = <T extends Constructor<InsteonBaseDevice>>(IB: T) => (class extends IB {
|
|
23
24
|
|
|
24
|
-
|
|
25
|
+
|
|
25
26
|
});
|
|
26
27
|
|
|
27
28
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Category } from '../../Definitions/Global/Categories.js';
|
|
2
|
-
|
|
2
|
+
|
|
3
3
|
import { parseTypeCode } from '../../Utils.js';
|
|
4
4
|
import { NodeInfo } from '../../Model/NodeInfo.js';
|
|
5
5
|
import { InsteonDimmableDevice } from './InsteonDimmableDevice.js';
|
|
@@ -19,6 +19,11 @@ import { ISYNode } from '../../ISYNode.js';
|
|
|
19
19
|
import { DeviceDef, type CategoryDef, type FamilyDef } from '../DeviceMap.js';
|
|
20
20
|
import { writeFileSync } from 'fs';
|
|
21
21
|
import type { Constructor } from '../Constructor.js';
|
|
22
|
+
import { Family } from '../../Definitions/index.js';
|
|
23
|
+
import { InsteonBaseDevice } from './InsteonBaseDevice.js';
|
|
24
|
+
import { InsteonSmokeSensorDevice } from './InsteonSmokeSensorDevice.js';
|
|
25
|
+
import { InsteonThermostatDevice } from './InsteonThermostatDevice.js';
|
|
26
|
+
import { InsteonLockDevice } from './InsteonLockDevice.js';
|
|
22
27
|
|
|
23
28
|
|
|
24
29
|
|
|
@@ -327,7 +332,7 @@ export class InsteonDeviceFactory {
|
|
|
327
332
|
retVal = { name: 'Plugin Relay', modelNumber: '2633-522' };
|
|
328
333
|
}
|
|
329
334
|
if (subAddress != '1' && retVal.class === InsteonKeypadRelayDevice) {
|
|
330
|
-
retVal.class = InsteonKeypadButtonDevice;
|
|
335
|
+
retVal.class = InsteonKeypadButtonDevice as any;
|
|
331
336
|
}
|
|
332
337
|
if (retVal.class === undefined) { retVal.class = InsteonRelayDevice; }
|
|
333
338
|
return retVal;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import 'winston';
|
|
2
2
|
import { ISY } from '../../ISY.js';
|
|
3
|
+
import type { NodeInfo } from '../../Model/NodeInfo.js';
|
|
3
4
|
import { InsteonRelayDevice } from './InsteonRelayDevice.js';
|
|
4
|
-
import '
|
|
5
|
-
|
|
5
|
+
import { KeypadButton } from './KeypadButton.js';
|
|
6
6
|
|
|
7
|
-
export class InsteonKeypadButtonDevice extends
|
|
8
|
-
constructor
|
|
7
|
+
export class InsteonKeypadButtonDevice extends KeypadButton.Node {
|
|
8
|
+
constructor(isy: ISY, deviceNode: NodeInfo) {
|
|
9
9
|
super(isy, deviceNode);
|
|
10
10
|
}
|
|
11
11
|
}
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
/* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
|
|
2
|
-
|
|
3
|
-
import { UnitOfMeasure } from "
|
|
4
|
-
import { Family } from "
|
|
5
|
-
import type { NodeInfo } from "
|
|
6
|
-
import type { ISY } from "
|
|
7
|
-
import type { ISYNode } from "
|
|
8
|
-
import { Base } from "
|
|
9
|
-
import { ISYDeviceNode } from "
|
|
10
|
-
import { Driver } from "
|
|
11
|
-
import { Insteon } from "
|
|
12
|
-
import type { DriverState } from "
|
|
13
|
-
import { NodeFactory } from "
|
|
14
|
-
|
|
1
|
+
/* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
|
|
2
|
+
|
|
3
|
+
import { UnitOfMeasure } from "../../Definitions/Global/UOM.js";
|
|
4
|
+
import { Family } from "../../Definitions/Global/Families.js";
|
|
5
|
+
import type { NodeInfo } from "../../Model/NodeInfo.js";
|
|
6
|
+
import type { ISY } from "../../ISY.js";
|
|
7
|
+
import type { ISYNode } from "../../ISYNode.js";
|
|
8
|
+
import { Base } from "./index.js";
|
|
9
|
+
import { ISYDeviceNode } from "../ISYDeviceNode.js";
|
|
10
|
+
import { Driver } from "../../Definitions/Global/Drivers.js";
|
|
11
|
+
import { Insteon } from "../../Definitions/index.js";
|
|
12
|
+
import type { DriverState } from "../../Model/DriverState.js";
|
|
13
|
+
import { NodeFactory } from "../NodeFactory.js";
|
|
14
|
+
|
|
15
15
|
export const nodeDefId = "KeypadButton";
|
|
16
|
-
|
|
16
|
+
|
|
17
17
|
type Commands = KeypadButton.Commands;
|
|
18
18
|
type Drivers = KeypadButton.Drivers;
|
|
19
|
-
|
|
19
|
+
|
|
20
20
|
export class KeypadButtonNode extends Base<Drivers, Commands> implements KeypadButton.Interface {
|
|
21
|
-
public readonly commands = {
|
|
21
|
+
public override readonly commands = {
|
|
22
22
|
QUERY: this.query,
|
|
23
23
|
BL: this.backlight,
|
|
24
24
|
WDU: this.writeChanges
|
|
25
25
|
};
|
|
26
|
-
static nodeDefId = "KeypadButton";
|
|
26
|
+
static override nodeDefId = "KeypadButton";
|
|
27
27
|
declare readonly nodeDefId: "KeypadButton";
|
|
28
28
|
constructor (isy: ISY, nodeInfo: NodeInfo) {
|
|
29
29
|
super(isy, nodeInfo);
|
|
@@ -46,9 +46,9 @@ export class KeypadButtonNode extends Base<Drivers, Commands> implements KeypadB
|
|
|
46
46
|
return this.drivers.ERR?.value;
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
|
-
|
|
49
|
+
|
|
50
50
|
NodeFactory.register(KeypadButtonNode);
|
|
51
|
-
|
|
51
|
+
|
|
52
52
|
export namespace KeypadButton {
|
|
53
53
|
export interface Interface extends Omit<InstanceType<typeof KeypadButtonNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
54
54
|
nodeDefId: "KeypadButton";
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
/* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import { Family } from
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import type {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import
|
|
13
|
-
import {
|
|
3
|
+
import { Driver } from '../../Definitions/Global/Drivers.js';
|
|
4
|
+
import { Family } from '../../Definitions/Global/Families.js';
|
|
5
|
+
import { UnitOfMeasure } from '../../Definitions/Global/UOM.js';
|
|
6
|
+
import { Insteon } from '../../Definitions/index.js';
|
|
7
|
+
import type { ISY } from '../../ISY.js';
|
|
8
|
+
import type { ISYNode } from '../../ISYNode.js';
|
|
9
|
+
import type { DriverState } from '../../Model/DriverState.js';
|
|
10
|
+
import type { NodeInfo } from '../../Model/NodeInfo.js';
|
|
11
|
+
import { ISYDeviceNode } from '../ISYDeviceNode.js';
|
|
12
|
+
import { NodeFactory } from '../NodeFactory.js';
|
|
13
|
+
import { InsteonBaseDevice } from './InsteonBaseDevice.js';
|
|
14
14
|
|
|
15
|
-
export const nodeDefId =
|
|
15
|
+
export const nodeDefId = 'RelayLampSwitch';
|
|
16
16
|
|
|
17
17
|
type Commands = RelayLampSwitch.Commands;
|
|
18
18
|
type Drivers = RelayLampSwitch.Drivers;
|
|
@@ -32,11 +32,11 @@ export class RelayLampSwitchNode extends InsteonBaseDevice<Drivers, Commands> im
|
|
|
32
32
|
declare readonly nodeDefId: 'RelayLampSwitch';
|
|
33
33
|
constructor(isy: ISY, nodeInfo: NodeInfo) {
|
|
34
34
|
super(isy, nodeInfo);
|
|
35
|
-
this.drivers.ST = Driver.create('ST', this, nodeInfo.state['ST'], { uom: UnitOfMeasure.
|
|
35
|
+
this.drivers.ST = Driver.create('ST', this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Boolean, label: 'Status', name: 'status' });
|
|
36
36
|
this.drivers.ERR = Driver.create('ERR', this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: 'Responding', name: 'responding' });
|
|
37
37
|
}
|
|
38
38
|
async on(value?: 0 | 100) {
|
|
39
|
-
return this.sendCommand('DON',
|
|
39
|
+
return this.sendCommand('DON', value);
|
|
40
40
|
}
|
|
41
41
|
async off() {
|
|
42
42
|
return this.sendCommand('DOF');
|
|
@@ -59,7 +59,7 @@ export class RelayLampSwitchNode extends InsteonBaseDevice<Drivers, Commands> im
|
|
|
59
59
|
async writeChanges() {
|
|
60
60
|
return this.sendCommand('WDU');
|
|
61
61
|
}
|
|
62
|
-
public get status():
|
|
62
|
+
public get status(): boolean {
|
|
63
63
|
return this.drivers.ST?.value;
|
|
64
64
|
}
|
|
65
65
|
public get responding(): Insteon.Error {
|
|
@@ -71,7 +71,7 @@ NodeFactory.register(RelayLampSwitchNode);
|
|
|
71
71
|
|
|
72
72
|
export namespace RelayLampSwitch {
|
|
73
73
|
export interface Interface extends Omit<InstanceType<typeof RelayLampSwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
|
|
74
|
-
nodeDefId:
|
|
74
|
+
nodeDefId: 'RelayLampSwitch';
|
|
75
75
|
}
|
|
76
76
|
export function is(node: ISYNode<any, any, any, any>): node is RelayLampSwitchNode {
|
|
77
77
|
return node.nodeDefId === nodeDefId;
|
|
@@ -81,51 +81,51 @@ export namespace RelayLampSwitch {
|
|
|
81
81
|
}
|
|
82
82
|
export const Node = RelayLampSwitchNode;
|
|
83
83
|
export type Commands = {
|
|
84
|
-
DON: ((value?:
|
|
85
|
-
label:
|
|
86
|
-
name:
|
|
84
|
+
DON: ((value?: 0 | 100) => Promise<boolean>) & {
|
|
85
|
+
label: 'On';
|
|
86
|
+
name: 'on';
|
|
87
87
|
};
|
|
88
88
|
DOF: (() => Promise<boolean>) & {
|
|
89
|
-
label:
|
|
90
|
-
name:
|
|
89
|
+
label: 'Off';
|
|
90
|
+
name: 'off';
|
|
91
91
|
};
|
|
92
92
|
DFOF: (() => Promise<boolean>) & {
|
|
93
|
-
label:
|
|
94
|
-
name:
|
|
93
|
+
label: 'Fast Off';
|
|
94
|
+
name: 'fastOff';
|
|
95
95
|
};
|
|
96
96
|
DFON: (() => Promise<boolean>) & {
|
|
97
|
-
label:
|
|
98
|
-
name:
|
|
97
|
+
label: 'Fast On';
|
|
98
|
+
name: 'fastOn';
|
|
99
99
|
};
|
|
100
100
|
QUERY: (() => Promise<boolean>) & {
|
|
101
|
-
label:
|
|
102
|
-
name:
|
|
101
|
+
label: 'Query';
|
|
102
|
+
name: 'query';
|
|
103
103
|
};
|
|
104
104
|
BEEP: ((value?: number) => Promise<boolean>) & {
|
|
105
|
-
label:
|
|
106
|
-
name:
|
|
105
|
+
label: 'Beep';
|
|
106
|
+
name: 'beep';
|
|
107
107
|
};
|
|
108
108
|
BL: ((value: number) => Promise<boolean>) & {
|
|
109
|
-
label:
|
|
110
|
-
name:
|
|
109
|
+
label: 'Backlight';
|
|
110
|
+
name: 'backlight';
|
|
111
111
|
};
|
|
112
112
|
WDU: (() => Promise<boolean>) & {
|
|
113
|
-
label:
|
|
114
|
-
name:
|
|
113
|
+
label: 'Write Changes';
|
|
114
|
+
name: 'writeChanges';
|
|
115
115
|
};
|
|
116
116
|
};
|
|
117
117
|
export type Drivers = {
|
|
118
118
|
ST: {
|
|
119
|
-
uom: UnitOfMeasure.
|
|
120
|
-
value:
|
|
121
|
-
label:
|
|
122
|
-
name:
|
|
119
|
+
uom: UnitOfMeasure.Boolean;
|
|
120
|
+
value: boolean;
|
|
121
|
+
label: 'Status';
|
|
122
|
+
name: 'status';
|
|
123
123
|
};
|
|
124
124
|
ERR: {
|
|
125
125
|
uom: UnitOfMeasure.Index;
|
|
126
126
|
value: Insteon.Error;
|
|
127
|
-
label:
|
|
128
|
-
name:
|
|
127
|
+
label: 'Responding';
|
|
128
|
+
name: 'responding';
|
|
129
129
|
};
|
|
130
130
|
};
|
|
131
131
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
1
|
+
|
|
2
|
+
import { ISY } from '../ISY.js';
|
|
3
3
|
import { ISYNode } from '../ISYNode.js';
|
|
4
4
|
import type { NodeDef } from '../Model/NodeDef.js';
|
|
5
5
|
import { isDynamic, type NodeInfo } from '../Model/NodeInfo.js';
|
|
6
6
|
import type { Constructor } from './Constructor.js';
|
|
7
7
|
import type { IdentityOf } from '../Utils.js';
|
|
8
|
+
import { Family } from '../Definitions/index.js';
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
|
package/src/Devices/index.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
|
|
2
|
+
import type { Family } from '../Definitions/index.js';
|
|
2
3
|
import {Insteon} from "./Insteon/index.js";
|
|
3
|
-
import { ISYDeviceNode } from './ISYDeviceNode.js';
|
|
4
4
|
import { ZWaveBaseDevice } from "./ZWave/ZWaveBaseDevice.js";
|
|
5
5
|
|
|
6
6
|
export const Devices = {
|