@zwave-js/cc 10.19.0 → 10.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/build/cc/BarrierOperatorCC.d.ts +2 -1
  2. package/build/cc/BarrierOperatorCC.d.ts.map +1 -1
  3. package/build/cc/BarrierOperatorCC.js +76 -15
  4. package/build/cc/BarrierOperatorCC.js.map +1 -1
  5. package/build/cc/BasicCC.d.ts +5 -1
  6. package/build/cc/BasicCC.d.ts.map +1 -1
  7. package/build/cc/BasicCC.js +52 -48
  8. package/build/cc/BasicCC.js.map +1 -1
  9. package/build/cc/BinarySwitchCC.d.ts +2 -1
  10. package/build/cc/BinarySwitchCC.d.ts.map +1 -1
  11. package/build/cc/BinarySwitchCC.js +43 -46
  12. package/build/cc/BinarySwitchCC.js.map +1 -1
  13. package/build/cc/ColorSwitchCC.js +3 -3
  14. package/build/cc/ColorSwitchCC.js.map +1 -1
  15. package/build/cc/ConfigurationCC.d.ts +48 -37
  16. package/build/cc/ConfigurationCC.d.ts.map +1 -1
  17. package/build/cc/ConfigurationCC.js +244 -165
  18. package/build/cc/ConfigurationCC.js.map +1 -1
  19. package/build/cc/EnergyProductionCC.d.ts +7 -1
  20. package/build/cc/EnergyProductionCC.d.ts.map +1 -1
  21. package/build/cc/EnergyProductionCC.js +19 -5
  22. package/build/cc/EnergyProductionCC.js.map +1 -1
  23. package/build/cc/IndicatorCC.d.ts +3 -0
  24. package/build/cc/IndicatorCC.d.ts.map +1 -1
  25. package/build/cc/IndicatorCC.js +3 -0
  26. package/build/cc/IndicatorCC.js.map +1 -1
  27. package/build/cc/IrrigationCC.d.ts +7 -0
  28. package/build/cc/IrrigationCC.d.ts.map +1 -1
  29. package/build/cc/IrrigationCC.js +7 -0
  30. package/build/cc/IrrigationCC.js.map +1 -1
  31. package/build/cc/MeterCC.d.ts +6 -0
  32. package/build/cc/MeterCC.d.ts.map +1 -1
  33. package/build/cc/MeterCC.js +6 -0
  34. package/build/cc/MeterCC.js.map +1 -1
  35. package/build/cc/MultilevelSwitchCC.d.ts +13 -1
  36. package/build/cc/MultilevelSwitchCC.d.ts.map +1 -1
  37. package/build/cc/MultilevelSwitchCC.js +83 -76
  38. package/build/cc/MultilevelSwitchCC.js.map +1 -1
  39. package/build/cc/ScheduleEntryLockCC.d.ts +1 -0
  40. package/build/cc/ScheduleEntryLockCC.d.ts.map +1 -1
  41. package/build/cc/ScheduleEntryLockCC.js.map +1 -1
  42. package/build/cc/WindowCoveringCC.d.ts +28 -78
  43. package/build/cc/WindowCoveringCC.d.ts.map +1 -1
  44. package/build/cc/WindowCoveringCC.js +136 -188
  45. package/build/cc/WindowCoveringCC.js.map +1 -1
  46. package/build/cc/ZWavePlusCC.d.ts +1 -2
  47. package/build/cc/ZWavePlusCC.d.ts.map +1 -1
  48. package/build/cc/ZWavePlusCC.js +68 -15
  49. package/build/cc/ZWavePlusCC.js.map +1 -1
  50. package/build/lib/API.d.ts +18 -2
  51. package/build/lib/API.d.ts.map +1 -1
  52. package/build/lib/API.js +13 -4
  53. package/build/lib/API.js.map +1 -1
  54. package/build/lib/Values.d.ts +2 -0
  55. package/build/lib/Values.d.ts.map +1 -1
  56. package/package.json +6 -6
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" />
2
2
  import { CommandClasses, Maybe, MessageOrCCLogEntry, SupervisionResult } from "@zwave-js/core/safe";
3
3
  import type { ZWaveApplicationHost, ZWaveHost } from "@zwave-js/host/safe";
4
- import { CCAPI, PollValueImplementation, POLL_VALUE, SetValueImplementation, SET_VALUE } from "../lib/API";
4
+ import { CCAPI, PollValueImplementation, POLL_VALUE, SetValueImplementation, SetValueImplementationHooksFactory, SET_VALUE, SET_VALUE_HOOKS } from "../lib/API";
5
5
  import { CommandClass, type CCCommandOptions, type CommandClassDeserializationOptions } from "../lib/CommandClass";
6
6
  import { BarrierOperatorCommand, BarrierState, SubsystemState, SubsystemType } from "../lib/_Types";
7
7
  export declare const BarrierOperatorCCValues: Readonly<{
@@ -164,6 +164,7 @@ export declare class BarrierOperatorCCAPI extends CCAPI {
164
164
  getEventSignaling(subsystemType: SubsystemType): Promise<SubsystemState | undefined>;
165
165
  setEventSignaling(subsystemType: SubsystemType, subsystemState: SubsystemState): Promise<SupervisionResult | undefined>;
166
166
  protected [SET_VALUE]: SetValueImplementation;
167
+ protected [SET_VALUE_HOOKS]: SetValueImplementationHooksFactory;
167
168
  protected [POLL_VALUE]: PollValueImplementation;
168
169
  }
169
170
  export declare class BarrierOperatorCC extends CommandClass {
@@ -1 +1 @@
1
- {"version":3,"file":"BarrierOperatorCC.d.ts","sourceRoot":"","sources":["../../src/cc/BarrierOperatorCC.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BarrierOperatorCC.d.ts","sourceRoot":"","sources":["../../src/cc/BarrierOperatorCC.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var _a, _b;
8
+ var _a, _b, _c;
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.BarrierOperatorCCEventSignalingGet = exports.BarrierOperatorCCEventSignalingReport = exports.BarrierOperatorCCEventSignalingSet = exports.BarrierOperatorCCSignalingCapabilitiesGet = exports.BarrierOperatorCCSignalingCapabilitiesReport = exports.BarrierOperatorCCGet = exports.BarrierOperatorCCReport = exports.BarrierOperatorCCSet = exports.BarrierOperatorCC = exports.BarrierOperatorCCAPI = exports.BarrierOperatorCCValues = void 0;
11
11
  function __assertType(argName, typeName, boundHasError) {
@@ -96,12 +96,7 @@ let BarrierOperatorCCAPI = class BarrierOperatorCCAPI extends API_1.CCAPI {
96
96
  const targetValue = value === _Types_1.BarrierState.Closed
97
97
  ? _Types_1.BarrierState.Closed
98
98
  : _Types_1.BarrierState.Open;
99
- const result = await this.set(targetValue);
100
- // Verify the change after a delay, unless the command was supervised and successful
101
- if (this.isSinglecast() && !(0, safe_1.supervisedCommandSucceeded)(result)) {
102
- this.schedulePoll({ property }, targetValue);
103
- }
104
- return result;
99
+ return this.set(targetValue);
105
100
  }
106
101
  else if (property === "signalingState") {
107
102
  if (propertyKey == undefined) {
@@ -113,18 +108,84 @@ let BarrierOperatorCCAPI = class BarrierOperatorCCAPI extends API_1.CCAPI {
113
108
  if (typeof value !== "number") {
114
109
  (0, API_1.throwWrongValueType)(this.ccId, property, "number", typeof value);
115
110
  }
116
- const result = await this.setEventSignaling(propertyKey, value);
117
- // Verify the change after a short delay, unless the command was supervised and successful
118
- if (this.isSinglecast() && !(0, safe_1.supervisedCommandSucceeded)(result)) {
119
- this.schedulePoll({ property }, value, { transition: "fast" });
120
- }
121
- return result;
111
+ return this.setEventSignaling(propertyKey, value);
122
112
  }
123
113
  else {
124
114
  (0, API_1.throwUnsupportedProperty)(this.ccId, property);
125
115
  }
126
116
  };
127
- this[_b] = async ({ property, propertyKey, }) => {
117
+ this[_b] = ({ property, propertyKey }, value, _options) => {
118
+ const valueId = {
119
+ commandClass: this.ccId,
120
+ property,
121
+ propertyKey,
122
+ };
123
+ if (exports.BarrierOperatorCCValues.targetState.is(valueId)) {
124
+ const currentStateValueId = exports.BarrierOperatorCCValues.currentState.endpoint(this.endpoint.index);
125
+ const targetValue = value === _Types_1.BarrierState.Closed
126
+ ? _Types_1.BarrierState.Closed
127
+ : _Types_1.BarrierState.Open;
128
+ return {
129
+ // Barrier Operator commands may take some time to be executed.
130
+ // Therefore we try to supervise the command execution and delay the
131
+ // optimistic update until the final result is received.
132
+ supervisionDelayedUpdates: true,
133
+ supervisionOnSuccess: () => {
134
+ this.tryGetValueDB()?.setValue(currentStateValueId, targetValue);
135
+ },
136
+ supervisionOnFailure: async () => {
137
+ // The command failed, so now we don't know the status - refresh the current value
138
+ try {
139
+ await this.get();
140
+ }
141
+ catch {
142
+ // ignore
143
+ }
144
+ },
145
+ optimisticallyUpdateRelatedValues: () => {
146
+ if (this.isSinglecast()) {
147
+ this.tryGetValueDB()?.setValue(currentStateValueId, targetValue);
148
+ }
149
+ else if (this.isMulticast()) {
150
+ // Figure out which nodes were affected by this command
151
+ const affectedNodes = this.endpoint.node.physicalNodes.filter((node) => node
152
+ .getEndpoint(this.endpoint.index)
153
+ ?.supportsCC(this.ccId));
154
+ // and optimistically update the currentValue
155
+ for (const node of affectedNodes) {
156
+ this.applHost
157
+ .tryGetValueDB(node.id)
158
+ ?.setValue(currentStateValueId, targetValue);
159
+ }
160
+ }
161
+ },
162
+ verifyChanges: () => {
163
+ if (this.isSinglecast()) {
164
+ // We query currentValue instead of targetValue to make sure that unsolicited updates cancel the scheduled poll
165
+ this.schedulePoll(currentStateValueId, targetValue);
166
+ }
167
+ else {
168
+ // For multicasts, do not schedule a refresh - this could cause a LOT of traffic
169
+ }
170
+ },
171
+ };
172
+ }
173
+ else if (exports.BarrierOperatorCCValues.signalingState.is(valueId)) {
174
+ const subsystemType = propertyKey;
175
+ const signalingStateValueId = exports.BarrierOperatorCCValues.signalingState(subsystemType).endpoint(this.endpoint.index);
176
+ return {
177
+ verifyChanges: () => {
178
+ if (this.isSinglecast()) {
179
+ this.schedulePoll(signalingStateValueId, value, {
180
+ // Signaling state changes are fast
181
+ transition: "fast",
182
+ });
183
+ }
184
+ },
185
+ };
186
+ }
187
+ };
188
+ this[_c] = async ({ property, propertyKey, }) => {
128
189
  switch (property) {
129
190
  case "currentState":
130
191
  case "position":
@@ -208,7 +269,7 @@ let BarrierOperatorCCAPI = class BarrierOperatorCCAPI extends API_1.CCAPI {
208
269
  return this.applHost.sendCommand(cc, this.commandOptions);
209
270
  }
210
271
  };
211
- _a = API_1.SET_VALUE, _b = API_1.POLL_VALUE;
272
+ _a = API_1.SET_VALUE, _b = API_1.SET_VALUE_HOOKS, _c = API_1.POLL_VALUE;
212
273
  BarrierOperatorCCAPI = __decorate([
213
274
  (0, CommandClassDecorators_1.API)(safe_1.CommandClasses["Barrier Operator"])
214
275
  ], BarrierOperatorCCAPI);
@@ -1 +1 @@
1
- {"version":3,"file":"BarrierOperatorCC.js","sourceRoot":"","sources":["../../src/cc/BarrierOperatorCC.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BarrierOperatorCC.js","sourceRoot":"","sources":["../../src/cc/BarrierOperatorCC.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  import { CommandClasses, Duration, Maybe, MessageOrCCLogEntry, SupervisionResult } from "@zwave-js/core/safe";
3
3
  import type { ZWaveApplicationHost, ZWaveHost } from "@zwave-js/host/safe";
4
4
  import { AllOrNone } from "@zwave-js/shared/safe";
5
- import { CCAPI, PollValueImplementation, POLL_VALUE, SetValueImplementation, SET_VALUE } from "../lib/API";
5
+ import { CCAPI, PollValueImplementation, POLL_VALUE, SetValueImplementation, SetValueImplementationHooksFactory, SET_VALUE, SET_VALUE_HOOKS } from "../lib/API";
6
6
  import { CommandClass, type CCCommandOptions, type CommandClassDeserializationOptions } from "../lib/CommandClass";
7
7
  import { BasicCommand } from "../lib/_Types";
8
8
  export declare const BasicCCValues: Readonly<{
@@ -47,6 +47,9 @@ export declare const BasicCCValues: Readonly<{
47
47
  readonly is: (valueId: import("@zwave-js/core/safe").ValueID) => boolean;
48
48
  readonly meta: {
49
49
  readonly label: "Restore previous value";
50
+ readonly states: {
51
+ true: string;
52
+ };
50
53
  readonly readable: false;
51
54
  readonly type: "boolean";
52
55
  readonly writeable: true;
@@ -148,6 +151,7 @@ export declare const BasicCCValues: Readonly<{
148
151
  export declare class BasicCCAPI extends CCAPI {
149
152
  supportsCommand(cmd: BasicCommand): Maybe<boolean>;
150
153
  protected [SET_VALUE]: SetValueImplementation;
154
+ protected [SET_VALUE_HOOKS]: SetValueImplementationHooksFactory;
151
155
  protected [POLL_VALUE]: PollValueImplementation;
152
156
  get(): Promise<Pick<BasicCCReport, "duration" | "currentValue" | "targetValue"> | undefined>;
153
157
  set(targetValue: number): Promise<SupervisionResult | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"BasicCC.d.ts","sourceRoot":"","sources":["../../src/cc/BasicCC.ts"],"names":[],"mappings":";AAAA,OAAO,EACN,cAAc,EACd,QAAQ,EACR,KAAK,EACL,mBAAmB,EAMnB,iBAAiB,EAIjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAQ,MAAM,uBAAuB,CAAC;AAExD,OAAO,EACN,KAAK,EACL,uBAAuB,EACvB,UAAU,EACV,sBAAsB,EACtB,SAAS,EAGT,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,YAAY,EAEZ,KAAK,gBAAgB,EACrB,KAAK,kCAAkC,EACvC,MAAM,qBAAqB,CAAC;AAY7B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsCxB,CAAC;AAEH,qBACa,UAAW,SAAQ,KAAK;IAC7B,eAAe,CAAC,GAAG,EAAE,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;IAUzD,SAAS,CAAC,CAAC,SAAS,CAAC,EAAE,sBAAsB,CA4E3C;IAEF,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,uBAAuB,CAW7C;IAGW,GAAG;IAqBH,GAAG,CACf,WAAW,EAAE,MAAM,GACjB,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;CAUzC;AAED,qBAGa,OAAQ,SAAQ,YAAY;IAChC,SAAS,EAAE,YAAY,CAAC;IAEnB,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCxD,aAAa,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;CAkCzE;AAED,UAAU,iBAAkB,SAAQ,gBAAgB;IACnD,WAAW,EAAE,MAAM,CAAC;CACpB;AAED,qBAEa,UAAW,SAAQ,OAAO;gBAErC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,kCAAkC,GAAG,iBAAiB;IAWzD,WAAW,EAAE,MAAM,CAAC;IAEpB,SAAS,IAAI,MAAM;IAKnB,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,mBAAmB;CAMtE;AAED,KAAK,oBAAoB,GAAG,gBAAgB,GAAG;IAC9C,YAAY,EAAE,MAAM,CAAC;CACrB,GAAG,SAAS,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;CACnB,CAAC,CAAC;AAEJ,qBACa,aAAc,SAAQ,OAAO;gBAGxC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,kCAAkC,GAAG,oBAAoB;IAuB5D,aAAa,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO;IAW7D,OAAO,CAAC,aAAa,CAA4B;IACjD,IACW,YAAY,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAEnD;IAED,SACgB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAEhD,SACgB,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IAExC,SAAS,IAAI,MAAM;IAWnB,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,mBAAmB;CAetE;AAED,qBAEa,UAAW,SAAQ,OAAO;CAAG"}
1
+ {"version":3,"file":"BasicCC.d.ts","sourceRoot":"","sources":["../../src/cc/BasicCC.ts"],"names":[],"mappings":";AAAA,OAAO,EACN,cAAc,EACd,QAAQ,EACR,KAAK,EACL,mBAAmB,EAKnB,iBAAiB,EAIjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAQ,MAAM,uBAAuB,CAAC;AAExD,OAAO,EACN,KAAK,EACL,uBAAuB,EACvB,UAAU,EACV,sBAAsB,EACtB,kCAAkC,EAClC,SAAS,EACT,eAAe,EAGf,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,YAAY,EAEZ,KAAK,gBAAgB,EACrB,KAAK,kCAAkC,EACvC,MAAM,qBAAqB,CAAC;AAY7B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCxB,CAAC;AAEH,qBACa,UAAW,SAAQ,KAAK;IAC7B,eAAe,CAAC,GAAG,EAAE,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;IAUzD,SAAS,CAAC,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAkB3C;IAEF,SAAS,CAAC,CAAC,eAAe,CAAC,EAAE,kCAAkC,CAkE7D;IAEF,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,uBAAuB,CAW7C;IAGW,GAAG;IAqBH,GAAG,CACf,WAAW,EAAE,MAAM,GACjB,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;CAUzC;AAED,qBAGa,OAAQ,SAAQ,YAAY;IAChC,SAAS,EAAE,YAAY,CAAC;IAEnB,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCxD,aAAa,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;CAkCzE;AAED,UAAU,iBAAkB,SAAQ,gBAAgB;IACnD,WAAW,EAAE,MAAM,CAAC;CACpB;AAED,qBAEa,UAAW,SAAQ,OAAO;gBAErC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,kCAAkC,GAAG,iBAAiB;IAWzD,WAAW,EAAE,MAAM,CAAC;IAEpB,SAAS,IAAI,MAAM;IAKnB,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,mBAAmB;CAMtE;AAED,KAAK,oBAAoB,GAAG,gBAAgB,GAAG;IAC9C,YAAY,EAAE,MAAM,CAAC;CACrB,GAAG,SAAS,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;CACnB,CAAC,CAAC;AAEJ,qBACa,aAAc,SAAQ,OAAO;gBAGxC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,kCAAkC,GAAG,oBAAoB;IAuB5D,aAAa,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO;IAW7D,OAAO,CAAC,aAAa,CAA4B;IACjD,IACW,YAAY,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAEnD;IAED,SACgB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAEhD,SACgB,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IAExC,SAAS,IAAI,MAAM;IAWnB,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,mBAAmB;CAetE;AAED,qBAEa,UAAW,SAAQ,OAAO;CAAG"}
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var _a, _b;
8
+ var _a, _b, _c;
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.BasicCCGet = exports.BasicCCReport = exports.BasicCCSet = exports.BasicCC = exports.BasicCCAPI = exports.BasicCCValues = void 0;
11
11
  function __assertType(argName, typeName, boundHasError) {
@@ -46,6 +46,9 @@ exports.BasicCCValues = Object.freeze({
46
46
  ...Values_1.V.staticProperty("restorePrevious", {
47
47
  ...safe_1.ValueMetadata.WriteOnlyBoolean,
48
48
  label: "Restore previous value",
49
+ states: {
50
+ true: "Restore",
51
+ },
49
52
  }),
50
53
  // TODO: This should really not be a static CC value, but depend on compat flags:
51
54
  ...Values_1.V.staticPropertyWithName("compatEvent", "event", {
@@ -73,55 +76,56 @@ let BasicCCAPI = class BasicCCAPI extends API_1.CCAPI {
73
76
  if (typeof value !== "number") {
74
77
  (0, API_1.throwWrongValueType)(this.ccId, property, "number", typeof value);
75
78
  }
76
- const result = await this.set(value);
77
- // If the command did not fail, assume that it succeeded and update the currentValue accordingly
78
- // so UIs have immediate feedback
79
- const shouldUpdateOptimistically =
80
- // For unsupervised commands, make the choice to update optimistically dependent on the driver options
81
- (!this.applHost.options.disableOptimisticValueUpdate &&
82
- result == undefined) ||
83
- // TODO: Consider delaying the optimistic update if the result is WORKING
84
- (0, safe_1.supervisedCommandSucceeded)(result);
85
- if (this.isSinglecast()) {
86
- // Only update currentValue for valid target values
87
- if (shouldUpdateOptimistically && value >= 0 && value <= 99) {
88
- this.tryGetValueDB()?.setValue(exports.BasicCCValues.currentValue.endpoint(this.endpoint.index), value);
89
- }
90
- // Verify the current value after a delay, unless the command was supervised and successful
91
- if (!(0, safe_1.supervisedCommandSucceeded)(result)) {
92
- // and verify the current value after a delay. We query currentValue instead of targetValue to make sure
93
- // that unsolicited updates cancel the scheduled poll
94
- if (property === "targetValue")
95
- property = "currentValue";
96
- this.schedulePoll({ property }, value);
97
- }
79
+ return this.set(value);
80
+ };
81
+ this[_b] = ({ property }, value, _options) => {
82
+ // Enable restoring the previous non-zero value
83
+ if (property === "restorePrevious") {
84
+ property = "targetValue";
85
+ value = 255;
98
86
  }
99
- else if (this.isMulticast()) {
100
- // Only update currentValue for valid target values
101
- if (shouldUpdateOptimistically && value >= 0 && value <= 99) {
102
- // Figure out which nodes were affected by this command
103
- const affectedNodes = this.endpoint.node.physicalNodes.filter((node) => node
104
- .getEndpoint(this.endpoint.index)
105
- ?.supportsCC(this.ccId));
106
- // and optimistically update the currentValue
107
- for (const node of affectedNodes) {
108
- this.applHost
109
- .tryGetValueDB(node.id)
110
- ?.setValue(exports.BasicCCValues.currentValue.endpoint(this.endpoint.index), value);
111
- }
112
- }
113
- else if (value === 255) {
114
- // We generally don't want to poll for multicasts because of how much traffic it can cause
115
- // However, when setting the value 255 (ON), we don't know the actual state
116
- // We query currentValue instead of targetValue to make sure that unsolicited updates cancel the scheduled poll
117
- if (property === "targetValue")
118
- property = "currentValue";
119
- this.schedulePoll({ property }, undefined);
120
- }
87
+ if (property === "targetValue") {
88
+ const currentValueValueId = exports.BasicCCValues.currentValue.endpoint(this.endpoint.index);
89
+ return {
90
+ optimisticallyUpdateRelatedValues: () => {
91
+ // Only update currentValue for valid target values
92
+ if (typeof value === "number" &&
93
+ value >= 0 &&
94
+ value <= 99) {
95
+ if (this.isSinglecast()) {
96
+ this.tryGetValueDB()?.setValue(currentValueValueId, value);
97
+ }
98
+ else if (this.isMulticast()) {
99
+ // Figure out which nodes were affected by this command
100
+ const affectedNodes = this.endpoint.node.physicalNodes.filter((node) => node
101
+ .getEndpoint(this.endpoint.index)
102
+ ?.supportsCC(this.ccId));
103
+ // and optimistically update the currentValue
104
+ for (const node of affectedNodes) {
105
+ this.applHost
106
+ .tryGetValueDB(node.id)
107
+ ?.setValue(currentValueValueId, value);
108
+ }
109
+ }
110
+ }
111
+ },
112
+ forceVerifyChanges: () => {
113
+ // If we don't know the actual value, we need to verify the change, regardless of the supervision result
114
+ return value === 255;
115
+ },
116
+ verifyChanges: () => {
117
+ if (this.isSinglecast() ||
118
+ // We generally don't want to poll for multicasts because of how much traffic it can cause
119
+ // However, when setting the value 255 (ON), we don't know the actual state
120
+ (this.isMulticast() && value === 255)) {
121
+ // We query currentValue instead of targetValue to make sure that unsolicited updates cancel the scheduled poll
122
+ this.schedulePoll(currentValueValueId, value === 255 ? undefined : value);
123
+ }
124
+ },
125
+ };
121
126
  }
122
- return result;
123
127
  };
124
- this[_b] = async ({ property, }) => {
128
+ this[_c] = async ({ property, }) => {
125
129
  switch (property) {
126
130
  case "currentValue":
127
131
  case "targetValue":
@@ -165,7 +169,7 @@ let BasicCCAPI = class BasicCCAPI extends API_1.CCAPI {
165
169
  return this.applHost.sendCommand(cc, this.commandOptions);
166
170
  }
167
171
  };
168
- _a = API_1.SET_VALUE, _b = API_1.POLL_VALUE;
172
+ _a = API_1.SET_VALUE, _b = API_1.SET_VALUE_HOOKS, _c = API_1.POLL_VALUE;
169
173
  BasicCCAPI = __decorate([
170
174
  (0, CommandClassDecorators_1.API)(safe_1.CommandClasses.Basic)
171
175
  ], BasicCCAPI);
@@ -1 +1 @@
1
- {"version":3,"file":"BasicCC.js","sourceRoot":"","sources":["../../src/cc/BasicCC.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BasicCC.js","sourceRoot":"","sources":["../../src/cc/BasicCC.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,8CAa6B;AAE7B,gDAAwD;AAExD,oCAUoB;AACpB,sDAK6B;AAC7B,0EASuC;AACvC,0CAAkC;AAClC,0CAA6C;AAEhC,QAAA,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1C,GAAG,UAAC,CAAC,oBAAoB,CAAC,qBAAc,CAAC,KAAK,EAAE;QAC/C,GAAG,UAAC,CAAC,cAAc,CAAC,cAAc,EAAE;YACnC,GAAG,oBAAa,CAAC,aAAa;YAC9B,KAAK,EAAE,eAAwB;SAC/B,CAAC;QACF,GAAG,UAAC,CAAC,cAAc,CAAC,aAAa,EAAE;YAClC,GAAG,oBAAa,CAAC,KAAK;YACtB,KAAK,EAAE,cAAuB;YAC9B,aAAa,EAAE,IAAI;SACnB,CAAC;QACF,GAAG,UAAC,CAAC,cAAc,CAAC,UAAU,EAAE;YAC/B,GAAG,oBAAa,CAAC,gBAAgB;YACjC,KAAK,EAAE,oBAA6B;YACpC,UAAU,EAAE,CAAC;SACb,CAAC;QAEF,GAAG,UAAC,CAAC,cAAc,CAAC,iBAAiB,EAAE;YACtC,GAAG,oBAAa,CAAC,gBAAgB;YACjC,KAAK,EAAE,wBAAiC;YACxC,MAAM,EAAE;gBACP,IAAI,EAAE,SAAS;aACf;SACD,CAAC;QAEF,iFAAiF;QACjF,GAAG,UAAC,CAAC,sBAAsB,CAC1B,aAAa,EACb,OAAO,EACP;YACC,GAAG,oBAAa,CAAC,aAAa;YAC9B,KAAK,EAAE,aAAa;SACX,EACV;YACC,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAClC,CAAC,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM;gBACpD,EAAE,oBAAoB;SACxB,CACD;KACD,CAAC;CACF,CAAC,CAAC;AAGI,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,WAAK;IAA9B;;QAWI,QAAW,GAA2B,KAAK,EACpD,EAAE,QAAQ,EAAE,EACZ,KAAK,EACJ,EAAE;YACH,+CAA+C;YAC/C,IAAI,QAAQ,KAAK,iBAAiB,EAAE;gBACnC,QAAQ,GAAG,aAAa,CAAC;gBACzB,KAAK,GAAG,GAAG,CAAC;aACZ;YAED,IAAI,QAAQ,KAAK,aAAa,EAAE;gBAC/B,IAAA,8BAAwB,EAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;aAC9C;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAC9B,IAAA,yBAAmB,EAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,KAAK,CAAC,CAAC;aACjE;YAED,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC,CAAC;QAEQ,QAAiB,GAAuC,CACjE,EAAE,QAAQ,EAAE,EACZ,KAAK,EACL,QAAQ,EACP,EAAE;YACH,+CAA+C;YAC/C,IAAI,QAAQ,KAAK,iBAAiB,EAAE;gBACnC,QAAQ,GAAG,aAAa,CAAC;gBACzB,KAAK,GAAG,GAAG,CAAC;aACZ;YAED,IAAI,QAAQ,KAAK,aAAa,EAAE;gBAC/B,MAAM,mBAAmB,GAAG,qBAAa,CAAC,YAAY,CAAC,QAAQ,CAC9D,IAAI,CAAC,QAAQ,CAAC,KAAK,CACnB,CAAC;gBACF,OAAO;oBACN,iCAAiC,EAAE,GAAG,EAAE;wBACvC,mDAAmD;wBACnD,IACC,OAAO,KAAK,KAAK,QAAQ;4BACzB,KAAK,IAAI,CAAC;4BACV,KAAK,IAAI,EAAE,EACV;4BACD,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;gCACxB,IAAI,CAAC,aAAa,EAAE,EAAE,QAAQ,CAC7B,mBAAmB,EACnB,KAAK,CACL,CAAC;6BACF;iCAAM,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;gCAC9B,uDAAuD;gCACvD,MAAM,aAAa,GAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CACtC,CAAC,IAAI,EAAE,EAAE,CACR,IAAI;qCACF,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;oCACjC,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CACzB,CAAC;gCACH,6CAA6C;gCAC7C,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE;oCACjC,IAAI,CAAC,QAAQ;yCACX,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;wCACvB,EAAE,QAAQ,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;iCACxC;6BACD;yBACD;oBACF,CAAC;oBACD,kBAAkB,EAAE,GAAG,EAAE;wBACxB,wGAAwG;wBACxG,OAAO,KAAK,KAAK,GAAG,CAAC;oBACtB,CAAC;oBACD,aAAa,EAAE,GAAG,EAAE;wBACnB,IACC,IAAI,CAAC,YAAY,EAAE;4BACnB,0FAA0F;4BAC1F,2EAA2E;4BAC3E,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,KAAK,KAAK,GAAG,CAAC,EACpC;4BACD,+GAA+G;4BAC9G,IAAa,CAAC,YAAY,CAC1B,mBAAmB,EACnB,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CACjC,CAAC;yBACF;oBACF,CAAC;iBACD,CAAC;aACF;QACF,CAAC,CAAC;QAEQ,QAAY,GAA4B,KAAK,EAAE,EACxD,QAAQ,GACR,EAAoB,EAAE;YACtB,QAAQ,QAAQ,EAAE;gBACjB,KAAK,cAAc,CAAC;gBACpB,KAAK,aAAa,CAAC;gBACnB,KAAK,UAAU;oBACd,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;gBACvC;oBACC,IAAA,8BAAwB,EAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;aAC/C;QACF,CAAC,CAAC;IAoCH,CAAC;IAjJO,eAAe,CAAC,GAAiB;QACvC,QAAQ,GAAG,EAAE;YACZ,KAAK,qBAAY,CAAC,GAAG;gBACpB,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;YAC5B,KAAK,qBAAY,CAAC,GAAG;gBACpB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAuGD,6EAA6E;IACtE,KAAK,CAAC,GAAG;QACf,IAAI,CAAC,qBAAqB,CAAC,qBAAY,EAAE,qBAAY,CAAC,GAAG,CAAC,CAAC;QAE3D,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE;YACxC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;SAC7B,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAC/C,EAAE,EACF,IAAI,CAAC,cAAc,CACnB,CAAC;QACF,IAAI,QAAQ,EAAE;YACb,IAAI,CAAC,aAAa,EAAE,EAAE,QAAQ,CAC7B,qBAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EACxD,QAAQ,CAAC,YAAY,CACrB,CAAC;YACF,OAAO,IAAA,WAAI,EAAC,QAAQ,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC;SACnE;IACF,CAAC;IAGM,KAAK,CAAC,GAAG,CACf,WAAmB;;QAEnB,IAAI,CAAC,qBAAqB,CAAC,qBAAY,EAAE,qBAAY,CAAC,GAAG,CAAC,CAAC;QAE3D,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE;YACxC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC7B,WAAW;SACX,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;KAC1D;CACD,CAAA;KAvIW,eAAS,OAoBT,qBAAe,OAoEf,gBAAU;AAnGT,UAAU;IADtB,IAAA,4BAAG,EAAC,qBAAc,CAAC,KAAK,CAAC;GACb,UAAU,CAkJtB;AAlJY,gCAAU;AAuJhB,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,2BAAY;IAGjC,KAAK,CAAC,SAAS,CAAC,QAA8B;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAE,CAAC;QAE7C,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;YACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;YAC5B,OAAO,EAAE,gBAAgB,IAAI,CAAC,MAAM,KAAK;YACzC,SAAS,EAAE,MAAM;SACjB,CAAC,CAAC;QAEH,iCAAiC;QACjC,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAEnC,sDAAsD;QACtD,kDAAkD;QAClD,IACC,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM;YAC3C,EAAE,oBAAoB;YACvB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,qBAAa,CAAC,YAAY,CAAC,IAAI,SAAS,EAC/D;YACD,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;gBAC5B,OAAO,EACN,kFAAkF;aACnF,CAAC,CAAC;YACH,yGAAyG;YACzG,4CAA4C;YAC5C,QAAQ,CAAC,QAAQ,CAAC,qBAAc,CAAC,KAAK,CAAC,CAAC;SACxC;QAED,0CAA0C;QAC1C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,QAA8B;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,WAAK,CAAC,MAAM,CACvB,qBAAc,CAAC,KAAK,EACpB,QAAQ,EACR,QAAQ,CACR,CAAC,WAAW,CAAC;YACb,QAAQ,EAAE,sBAAe,CAAC,SAAS;SACnC,CAAC,CAAC;QAEH,iCAAiC;QACjC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;YACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;YAC5B,OAAO,EAAE,4BAA4B;YACrC,SAAS,EAAE,UAAU;SACrB,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;QACtC,IAAI,aAAa,EAAE;YAClB,IAAI,UAAU,GAAG;sBACE,aAAa,CAAC,YAAY,EAAE,CAAC;YAChD,IAAI,aAAa,CAAC,WAAW,IAAI,SAAS,EAAE;gBAC3C,UAAU,IAAI;sBACI,aAAa,CAAC,WAAW;sBACzB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,WAAW,EAAE,CAAC;aACtE;YACD,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;gBAC5B,OAAO,EAAE,UAAU;gBACnB,SAAS,EAAE,SAAS;aACpB,CAAC,CAAC;SACH;IACF,CAAC;CACD,CAAA;AAvEY,OAAO;IAHnB,IAAA,qCAAY,EAAC,qBAAc,CAAC,KAAK,CAAC;IAClC,IAAA,2CAAkB,EAAC,CAAC,CAAC,CAAC,0DAA0D;;IAChF,IAAA,iCAAQ,EAAC,qBAAa,CAAC;GACX,OAAO,CAuEnB;AAvEY,0BAAO;AA+Eb,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,OAAO;IACtC,YACC,IAAe,EACf,OAA+D;QAE/D,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrB,IAAI,IAAA,wCAAyB,EAAC,OAAO,CAAC,EAAE;YACvC,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SACnC;aAAM;YACN,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;SACvC;IACF,CAAC;IAIM,SAAS;QACf,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,WAAW,EAAE;SAC7C,CAAC;IACH,CAAC;CACD,CAAA;AA3BY,UAAU;IAFtB,IAAA,kCAAS,EAAC,qBAAY,CAAC,GAAG,CAAC;IAC3B,IAAA,uCAAc,GAAE;GACJ,UAAU,CA2BtB;AA3BY,gCAAU;AAqChB,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,OAAO;IACzC,6CAA6C;IAC7C,YACC,IAAe,EACf,OAAkE;QAElE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErB,IAAI,IAAA,wCAAyB,EAAC,OAAO,CAAC,EAAE;YACvC,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,aAAa,GAAG,IAAA,uBAAgB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAEvD,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;gBAClD,IAAI,CAAC,WAAW,GAAG,IAAA,kBAAW,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChD,IAAI,CAAC,QAAQ,GAAG,eAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;aACtD;YACD,yEAAyE;YACzE,6CAA6C;SAC7C;aAAM;YACN,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;YAC1C,IAAI,aAAa,IAAI,OAAO,EAAE;gBAC7B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;gBACvC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;aACjC;SACD;IACF,CAAC;IAEM,aAAa,CAAC,QAA8B;QAClD,IACC,IAAI,CAAC,YAAY,KAAK,oBAAa;YACnC,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,EACtC;YACD,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;SAC/B;QAED,OAAO,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAID,IAAW,YAAY;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;IAQM,SAAS;QACf,MAAM,OAAO,GAAa;YACzB,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY;SAChE,CAAC;QACF,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,EAAE;YAC3D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;SAChE;QACD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,MAAM,OAAO,GAAkB;YAC9B,eAAe,EAAE,IAAI,CAAC,YAAY;SAClC,CAAC;QACF,IAAI,IAAI,CAAC,WAAW,IAAI,SAAS,EAAE;YAClC,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;SAC3C;QACD,IAAI,IAAI,CAAC,QAAQ,IAAI,SAAS,EAAE;YAC/B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;SAC5C;QACD,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO;SACP,CAAC;IACH,CAAC;CACD,CAAA;AApCA;IADC,IAAA,gCAAO,EAAC,qBAAa,CAAC,YAAY,CAAC;iDAGnC;AAGD;IADC,IAAA,gCAAO,EAAC,qBAAa,CAAC,WAAW,CAAC;kDACa;AAGhD;IADC,IAAA,gCAAO,EAAC,qBAAa,CAAC,QAAQ,CAAC;+CACe;AAhDnC,aAAa;IADzB,IAAA,kCAAS,EAAC,qBAAY,CAAC,MAAM,CAAC;GAClB,aAAa,CA4EzB;AA5EY,sCAAa;AAgFnB,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,OAAO;CAAG,CAAA;AAA7B,UAAU;IAFtB,IAAA,kCAAS,EAAC,qBAAY,CAAC,GAAG,CAAC;IAC3B,IAAA,2CAAkB,EAAC,aAAa,CAAC;GACrB,UAAU,CAAmB;AAA7B,gCAAU"}
@@ -2,7 +2,7 @@
2
2
  import { CommandClasses, Duration, Maybe, MessageOrCCLogEntry, SupervisionResult } from "@zwave-js/core/safe";
3
3
  import type { ZWaveApplicationHost, ZWaveHost } from "@zwave-js/host/safe";
4
4
  import type { AllOrNone } from "@zwave-js/shared";
5
- import { CCAPI, PollValueImplementation, POLL_VALUE, SetValueImplementation, SET_VALUE } from "../lib/API";
5
+ import { CCAPI, PollValueImplementation, POLL_VALUE, SetValueImplementation, SetValueImplementationHooksFactory, SET_VALUE, SET_VALUE_HOOKS } from "../lib/API";
6
6
  import { CommandClass, type CCCommandOptions, type CommandClassDeserializationOptions } from "../lib/CommandClass";
7
7
  import { BinarySwitchCommand } from "../lib/_Types";
8
8
  export declare const BinarySwitchCCValues: Readonly<{
@@ -102,6 +102,7 @@ export declare class BinarySwitchCCAPI extends CCAPI {
102
102
  */
103
103
  set(targetValue: boolean, duration?: Duration | string): Promise<SupervisionResult | undefined>;
104
104
  protected [SET_VALUE]: SetValueImplementation;
105
+ protected [SET_VALUE_HOOKS]: SetValueImplementationHooksFactory;
105
106
  protected [POLL_VALUE]: PollValueImplementation;
106
107
  }
107
108
  export declare class BinarySwitchCC extends CommandClass {
@@ -1 +1 @@
1
- {"version":3,"file":"BinarySwitchCC.d.ts","sourceRoot":"","sources":["../../src/cc/BinarySwitchCC.ts"],"names":[],"mappings":";AAAA,OAAO,EACN,cAAc,EACd,QAAQ,EAGR,KAAK,EACL,mBAAmB,EAMnB,iBAAiB,EAIjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EACN,KAAK,EACL,uBAAuB,EACvB,UAAU,EACV,sBAAsB,EACtB,SAAS,EAGT,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,YAAY,EAEZ,KAAK,gBAAgB,EACrB,KAAK,kCAAkC,EACvC,MAAM,qBAAqB,CAAC;AAY7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsB/B,CAAC;AAEH,qBACa,iBAAkB,SAAQ,KAAK;IACpC,eAAe,CAAC,GAAG,EAAE,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC;IAWnD,GAAG;;;;;;;IAwBhB;;;;OAIG;IAEU,GAAG,CACf,WAAW,EAAE,OAAO,EACpB,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,GAC1B,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAezC,SAAS,CAAC,CAAC,SAAS,CAAC,EAAE,sBAAsB,CA8D3C;IAEF,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,uBAAuB,CAW7C;CACF;AAED,qBAGa,cAAe,SAAQ,YAAY;IACvC,SAAS,EAAE,mBAAmB,CAAC;IAE1B,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAexD,aAAa,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmClE,mBAAmB,CACzB,QAAQ,EAAE,oBAAoB,EAC9B,KAAK,EAAE,MAAM,GACX,OAAO;CAIV;AAED,UAAU,wBAAyB,SAAQ,gBAAgB;IAC1D,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC7B;AAED,qBAEa,iBAAkB,SAAQ,cAAc;gBAEnD,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,kCAAkC,GAAG,wBAAwB;IAehE,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IAE/B,SAAS,IAAI,MAAM;IASnB,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,mBAAmB;CAYtE;AAED,MAAM,MAAM,2BAA2B,GAAG,gBAAgB,GAAG;IAC5D,YAAY,EAAE,OAAO,CAAC;CACtB,GAAG,SAAS,CAAC;IACZ,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC5B,CAAC,CAAC;AAEJ,qBACa,oBAAqB,SAAQ,cAAc;gBAEtD,IAAI,EAAE,SAAS,EACf,OAAO,EACJ,kCAAkC,GAClC,2BAA2B;IAoB/B,SACgB,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAEzD,SACgB,WAAW,EAAE,OAAO,GAAG,SAAS,CAAC;IAEjD,SACgB,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IAExC,SAAS,IAAI,MAAM;IAgBnB,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,mBAAmB;CAetE;AAED,qBAEa,iBAAkB,SAAQ,cAAc;CAAG"}
1
+ {"version":3,"file":"BinarySwitchCC.d.ts","sourceRoot":"","sources":["../../src/cc/BinarySwitchCC.ts"],"names":[],"mappings":";AAAA,OAAO,EACN,cAAc,EACd,QAAQ,EAGR,KAAK,EACL,mBAAmB,EAKnB,iBAAiB,EAIjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EACN,KAAK,EACL,uBAAuB,EACvB,UAAU,EACV,sBAAsB,EACtB,kCAAkC,EAClC,SAAS,EACT,eAAe,EAGf,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,YAAY,EAEZ,KAAK,gBAAgB,EACrB,KAAK,kCAAkC,EACvC,MAAM,qBAAqB,CAAC;AAY7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsB/B,CAAC;AAEH,qBACa,iBAAkB,SAAQ,KAAK;IACpC,eAAe,CAAC,GAAG,EAAE,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC;IAWnD,GAAG;;;;;;;IAwBhB;;;;OAIG;IAEU,GAAG,CACf,WAAW,EAAE,OAAO,EACpB,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,GAC1B,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAezC,SAAS,CAAC,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAa3C;IAEF,SAAS,CAAC,CAAC,eAAe,CAAC,EAAE,kCAAkC,CAkD7D;IAEF,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,uBAAuB,CAW7C;CACF;AAED,qBAGa,cAAe,SAAQ,YAAY;IACvC,SAAS,EAAE,mBAAmB,CAAC;IAE1B,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAexD,aAAa,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmClE,mBAAmB,CACzB,QAAQ,EAAE,oBAAoB,EAC9B,KAAK,EAAE,MAAM,GACX,OAAO;CAIV;AAED,UAAU,wBAAyB,SAAQ,gBAAgB;IAC1D,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC7B;AAED,qBAEa,iBAAkB,SAAQ,cAAc;gBAEnD,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,kCAAkC,GAAG,wBAAwB;IAehE,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IAE/B,SAAS,IAAI,MAAM;IASnB,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,mBAAmB;CAYtE;AAED,MAAM,MAAM,2BAA2B,GAAG,gBAAgB,GAAG;IAC5D,YAAY,EAAE,OAAO,CAAC;CACtB,GAAG,SAAS,CAAC;IACZ,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC5B,CAAC,CAAC;AAEJ,qBACa,oBAAqB,SAAQ,cAAc;gBAEtD,IAAI,EAAE,SAAS,EACf,OAAO,EACJ,kCAAkC,GAClC,2BAA2B;IAoB/B,SACgB,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAEzD,SACgB,WAAW,EAAE,OAAO,GAAG,SAAS,CAAC;IAEjD,SACgB,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IAExC,SAAS,IAAI,MAAM;IAgBnB,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,mBAAmB;CAetE;AAED,qBAEa,iBAAkB,SAAQ,cAAc;CAAG"}
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var _a, _b;
8
+ var _a, _b, _c;
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.BinarySwitchCCGet = exports.BinarySwitchCCReport = exports.BinarySwitchCCSet = exports.BinarySwitchCC = exports.BinarySwitchCCAPI = exports.BinarySwitchCCValues = void 0;
11
11
  function __assertType(argName, typeName, boundHasError) {
@@ -80,50 +80,47 @@ let BinarySwitchCCAPI = class BinarySwitchCCAPI extends API_1.CCAPI {
80
80
  (0, API_1.throwWrongValueType)(this.ccId, property, "boolean", typeof value);
81
81
  }
82
82
  const duration = safe_1.Duration.from(options?.transitionDuration);
83
- const result = await this.set(value, duration);
84
- // If the command did not fail, assume that it succeeded and update the currentValue accordingly
85
- // so UIs have immediate feedback
86
- const shouldUpdateOptimistically =
87
- // For unsupervised commands, make the choice to update optimistically dependent on the driver options
88
- (!this.applHost.options.disableOptimisticValueUpdate &&
89
- result == undefined) ||
90
- // TODO: Consider delaying the optimistic update if the result is WORKING
91
- (0, safe_1.supervisedCommandSucceeded)(result);
92
- const currentValueValueId = exports.BinarySwitchCCValues.currentValue.endpoint(this.endpoint.index);
93
- if (this.isSinglecast()) {
94
- if (shouldUpdateOptimistically) {
95
- this.tryGetValueDB()?.setValue(currentValueValueId, value);
96
- }
97
- // Verify the current value after a delay, unless the command was supervised and successful
98
- if (!(0, safe_1.supervisedCommandSucceeded)(result)) {
99
- // We query currentValue instead of targetValue to make sure that unsolicited updates cancel the scheduled poll
100
- if (property === "targetValue")
101
- property = "currentValue";
102
- this.schedulePoll({ property }, value, {
103
- duration,
104
- // on/off "transitions" are usually fast
105
- transition: "fast",
106
- });
107
- }
108
- }
109
- else if (this.isMulticast()) {
110
- if (shouldUpdateOptimistically) {
111
- // Figure out which nodes were affected by this command
112
- const affectedNodes = this.endpoint.node.physicalNodes.filter((node) => node
113
- .getEndpoint(this.endpoint.index)
114
- ?.supportsCC(this.ccId));
115
- // and optimistically update the currentValue
116
- for (const node of affectedNodes) {
117
- this.applHost
118
- .tryGetValueDB(node.id)
119
- ?.setValue(currentValueValueId, value);
120
- }
121
- }
122
- // For multicasts, do not schedule a refresh - this could cause a LOT of traffic
83
+ return this.set(value, duration);
84
+ };
85
+ this[_b] = ({ property }, value, options) => {
86
+ if (property === "targetValue") {
87
+ const currentValueValueId = exports.BinarySwitchCCValues.currentValue.endpoint(this.endpoint.index);
88
+ return {
89
+ optimisticallyUpdateRelatedValues: () => {
90
+ // After setting targetValue, optimistically update currentValue
91
+ if (this.isSinglecast()) {
92
+ this.tryGetValueDB()?.setValue(currentValueValueId, value);
93
+ }
94
+ else if (this.isMulticast()) {
95
+ // Figure out which nodes were affected by this command
96
+ const affectedNodes = this.endpoint.node.physicalNodes.filter((node) => node
97
+ .getEndpoint(this.endpoint.index)
98
+ ?.supportsCC(this.ccId));
99
+ // and optimistically update the currentValue
100
+ for (const node of affectedNodes) {
101
+ this.applHost
102
+ .tryGetValueDB(node.id)
103
+ ?.setValue(currentValueValueId, value);
104
+ }
105
+ }
106
+ },
107
+ verifyChanges: () => {
108
+ if (this.isSinglecast()) {
109
+ // We query currentValue instead of targetValue to make sure that unsolicited updates cancel the scheduled poll
110
+ this.schedulePoll(currentValueValueId, value, {
111
+ duration: safe_1.Duration.from(options?.transitionDuration),
112
+ // on/off "transitions" are usually fast
113
+ transition: "fast",
114
+ });
115
+ }
116
+ else {
117
+ // For multicasts, do not schedule a refresh - this could cause a LOT of traffic
118
+ }
119
+ },
120
+ };
123
121
  }
124
- return result;
125
122
  };
126
- this[_b] = async ({ property, }) => {
123
+ this[_c] = async ({ property, }) => {
127
124
  switch (property) {
128
125
  case "currentValue":
129
126
  case "targetValue":
@@ -178,7 +175,7 @@ let BinarySwitchCCAPI = class BinarySwitchCCAPI extends API_1.CCAPI {
178
175
  return this.applHost.sendCommand(cc, this.commandOptions);
179
176
  }
180
177
  };
181
- _a = API_1.SET_VALUE, _b = API_1.POLL_VALUE;
178
+ _a = API_1.SET_VALUE, _b = API_1.SET_VALUE_HOOKS, _c = API_1.POLL_VALUE;
182
179
  BinarySwitchCCAPI = __decorate([
183
180
  (0, CommandClassDecorators_1.API)(safe_1.CommandClasses["Binary Switch"])
184
181
  ], BinarySwitchCCAPI);
@@ -251,8 +248,8 @@ let BinarySwitchCCSet = class BinarySwitchCCSet extends BinarySwitchCC {
251
248
  }
252
249
  serialize() {
253
250
  const payload = [this.targetValue ? 0xff : 0x00];
254
- if (this.version >= 2 && this.duration) {
255
- payload.push(this.duration.serializeSet());
251
+ if (this.version >= 2) {
252
+ payload.push((this.duration ?? safe_1.Duration.default()).serializeSet());
256
253
  }
257
254
  this.payload = Buffer.from(payload);
258
255
  return super.serialize();