homebridge-carrier-infinity 1.6.8 → 1.6.9

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/README.md CHANGED
@@ -31,5 +31,5 @@ This is a standalone plugin for Homebridge that talks directly to the Infinity/E
31
31
 
32
32
  # Development
33
33
 
34
- [![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/grivkees/homebridge-carrier-infinity/Build,%20Lint,%20Test/master?logo=github-actions&logoColor=white)](https://github.com/grivkees/homebridge-carrier-infinity/actions/workflows/build.yml)
35
- [![npm (tag)](https://img.shields.io/npm/v/homebridge-carrier-infinity/next)](https://www.npmjs.com/package/homebridge-carrier-infinity/v/next)
34
+ [![GitHub Workflow Status (branch)](https://img.shields.io/github/actions/workflow/status/grivkees/homebridge-carrier-infinity/build.yml?branch=master&logo=github-actions&logoColor=white)](https://github.com/grivkees/homebridge-carrier-infinity/actions/workflows/build.yml)
35
+ [![npm (tag)](https://img.shields.io/npm/v/homebridge-carrier-infinity/next)](https://www.npmjs.com/package/homebridge-carrier-infinity/v/next)
package/dist/helpers.d.ts CHANGED
@@ -5,4 +5,5 @@ export declare function areCharTempsClose(t1: CharacteristicValue | null, t2: Ch
5
5
  export declare function convertSystemFan2CharFan(fan: string): CharacteristicValue;
6
6
  export declare function convertCharFan2SystemFan(fan: CharacteristicValue): string;
7
7
  export declare function processSetpointDeadband(htsp: number, clsp: number, units: string, sticky_clsp: boolean): [number, number];
8
+ export declare function range(start: number, end: number): number[];
8
9
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAM3F;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAU3F;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI,EAAE,EAAE,EAAE,mBAAmB,GAAG,IAAI,GAAG,OAAO,CAMzG;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,CAWzE;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,mBAAmB,GAAG,MAAM,CAWzE;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,OAAO,GACnB,CAAC,MAAM,EAAE,MAAM,CAAC,CAUlB"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAM3F;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAW3F;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI,EAAE,EAAE,EAAE,mBAAmB,GAAG,IAAI,GAAG,OAAO,CAMzG;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,CAWzE;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,mBAAmB,GAAG,MAAM,CAWzE;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,OAAO,GACnB,CAAC,MAAM,EAAE,MAAM,CAAC,CAUlB;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAE1D"}
package/dist/helpers.js CHANGED
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.processSetpointDeadband = exports.convertCharFan2SystemFan = exports.convertSystemFan2CharFan = exports.areCharTempsClose = exports.convertCharTemp2SystemTemp = exports.convertSystemTemp2CharTemp = void 0;
3
+ exports.range = exports.processSetpointDeadband = exports.convertCharFan2SystemFan = exports.convertSystemFan2CharFan = exports.areCharTempsClose = exports.convertCharTemp2SystemTemp = exports.convertSystemTemp2CharTemp = void 0;
4
4
  const constants_1 = require("./api/constants");
5
5
  function convertSystemTemp2CharTemp(temp, units) {
6
6
  if (units === 'F') {
7
- return 5.0 / 9.0 * (temp - 32);
7
+ return Math.round(5.0 / 9.0 * (temp - 32) * 10) / 10;
8
8
  }
9
9
  else {
10
10
  return temp;
@@ -13,20 +13,21 @@ function convertSystemTemp2CharTemp(temp, units) {
13
13
  exports.convertSystemTemp2CharTemp = convertSystemTemp2CharTemp;
14
14
  function convertCharTemp2SystemTemp(temp, units) {
15
15
  temp = Number(temp);
16
+ // HK keeps track in C, but carrier can be either C or F. Convert if needed.
16
17
  if (units === 'F') {
17
- // HK keeps track in C, but infinity can be either C or F. Convert to F if
18
- // needed, then round to degree for infinity.
19
- return Math.round((9.0 / 5.0 * temp) + 32);
18
+ // Round to integer degree for carrier.
19
+ const rounded = Math.round((9.0 / 5.0 * temp) + 32);
20
+ return Math.abs(rounded) < Number.EPSILON ? 0 : rounded; // get rid of -0
20
21
  }
21
22
  else {
22
- // Round C to half degree for infinity.
23
+ // Round C to half degree for carrier.
23
24
  return Math.round(temp * 2) / 2;
24
25
  }
25
26
  }
26
27
  exports.convertCharTemp2SystemTemp = convertCharTemp2SystemTemp;
27
28
  function areCharTempsClose(t1, t2) {
28
29
  if (t1 && t2) {
29
- return Math.abs(Number(t1) - Number(t2)) < .1;
30
+ return Math.abs(Number(t1) - Number(t2)) < Number.EPSILON;
30
31
  }
31
32
  else {
32
33
  return false;
@@ -72,4 +73,8 @@ function processSetpointDeadband(htsp, clsp, units, sticky_clsp) {
72
73
  return [htsp, clsp];
73
74
  }
74
75
  exports.processSetpointDeadband = processSetpointDeadband;
76
+ function range(start, end) {
77
+ return Array.from({ length: (end - start) + 1 }, (_, i) => start + i);
78
+ }
79
+ exports.range = range;
75
80
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":";;;AACA,+CAA2C;AAE3C,SAAgB,0BAA0B,CAAC,IAAY,EAAE,KAAa;IACpE,IAAI,KAAK,KAAK,GAAG,EAAE;QACjB,OAAO,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;KAChC;SAAM;QACL,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAND,gEAMC;AAED,SAAgB,0BAA0B,CAAC,IAAyB,EAAE,KAAa;IACjF,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACpB,IAAI,KAAK,KAAK,GAAG,EAAE;QACjB,0EAA0E;QAC1E,6CAA6C;QAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;KAC5C;SAAM;QACL,uCAAuC;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;KACjC;AACH,CAAC;AAVD,gEAUC;AAED,SAAgB,iBAAiB,CAAC,EAA8B,EAAE,EAA8B;IAC9F,IAAI,EAAE,IAAI,EAAE,EAAE;QACZ,OAAO,IAAI,CAAC,GAAG,CAAE,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAE,GAAG,EAAE,CAAC;KACjD;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAND,8CAMC;AAED,SAAgB,wBAAwB,CAAC,GAAW;IAClD,QAAO,GAAG,EAAE;QACV,KAAK,oBAAQ,CAAC,GAAG;YACf,OAAO,CAAC,CAAC;QACX,KAAK,oBAAQ,CAAC,GAAG;YACf,OAAO,CAAC,CAAC;QACX,KAAK,oBAAQ,CAAC,IAAI;YAChB,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAXD,4DAWC;AAED,SAAgB,wBAAwB,CAAC,GAAwB;IAC/D,QAAQ,GAAG,EAAE;QACX,KAAK,CAAC;YACJ,OAAO,oBAAQ,CAAC,GAAG,CAAC;QACtB,KAAK,CAAC;YACJ,OAAO,oBAAQ,CAAC,GAAG,CAAC;QACtB,KAAK,CAAC;YACJ,OAAO,oBAAQ,CAAC,IAAI,CAAC;QACvB;YACE,OAAO,oBAAQ,CAAC,GAAG,CAAC;KACvB;AACH,CAAC;AAXD,4DAWC;AAED,SAAgB,uBAAuB,CACrC,IAAY,EACZ,IAAY,EACZ,KAAa,EACb,WAAoB;IAEpB,MAAM,QAAQ,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,IAAI,IAAI,GAAG,IAAI,GAAG,QAAQ,EAAE;QAC1B,IAAI,WAAW,EAAE;YACf,IAAI,GAAG,IAAI,GAAG,QAAQ,CAAC;SACxB;aAAM;YACL,IAAI,GAAG,IAAI,GAAG,QAAQ,CAAC;SACxB;KACF;IACD,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACtB,CAAC;AAfD,0DAeC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":";;;AACA,+CAA2C;AAE3C,SAAgB,0BAA0B,CAAC,IAAY,EAAE,KAAa;IACpE,IAAI,KAAK,KAAK,GAAG,EAAE;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;KACtD;SAAM;QACL,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAND,gEAMC;AAED,SAAgB,0BAA0B,CAAC,IAAyB,EAAE,KAAa;IACjF,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACpB,4EAA4E;IAC5E,IAAI,KAAK,KAAK,GAAG,EAAE;QACjB,uCAAuC;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,gBAAgB;KAC1E;SAAM;QACL,sCAAsC;QACtC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;KACjC;AACH,CAAC;AAXD,gEAWC;AAED,SAAgB,iBAAiB,CAAC,EAA8B,EAAE,EAA8B;IAC9F,IAAI,EAAE,IAAI,EAAE,EAAE;QACZ,OAAO,IAAI,CAAC,GAAG,CAAE,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAE,GAAG,MAAM,CAAC,OAAO,CAAC;KAC7D;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAND,8CAMC;AAED,SAAgB,wBAAwB,CAAC,GAAW;IAClD,QAAO,GAAG,EAAE;QACV,KAAK,oBAAQ,CAAC,GAAG;YACf,OAAO,CAAC,CAAC;QACX,KAAK,oBAAQ,CAAC,GAAG;YACf,OAAO,CAAC,CAAC;QACX,KAAK,oBAAQ,CAAC,IAAI;YAChB,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;KACZ;AACH,CAAC;AAXD,4DAWC;AAED,SAAgB,wBAAwB,CAAC,GAAwB;IAC/D,QAAQ,GAAG,EAAE;QACX,KAAK,CAAC;YACJ,OAAO,oBAAQ,CAAC,GAAG,CAAC;QACtB,KAAK,CAAC;YACJ,OAAO,oBAAQ,CAAC,GAAG,CAAC;QACtB,KAAK,CAAC;YACJ,OAAO,oBAAQ,CAAC,IAAI,CAAC;QACvB;YACE,OAAO,oBAAQ,CAAC,GAAG,CAAC;KACvB;AACH,CAAC;AAXD,4DAWC;AAED,SAAgB,uBAAuB,CACrC,IAAY,EACZ,IAAY,EACZ,KAAa,EACb,WAAoB;IAEpB,MAAM,QAAQ,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,IAAI,IAAI,GAAG,IAAI,GAAG,QAAQ,EAAE;QAC1B,IAAI,WAAW,EAAE;YACf,IAAI,GAAG,IAAI,GAAG,QAAQ,CAAC;SACxB;aAAM;YACL,IAAI,GAAG,IAAI,GAAG,QAAQ,CAAC;SACxB;KACF;IACD,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACtB,CAAC;AAfD,0DAeC;AAED,SAAgB,KAAK,CAAC,KAAa,EAAE,GAAW;IAC9C,OAAO,KAAK,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,EAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;AACtE,CAAC;AAFD,sBAEC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "Homebridge Carrier Infinity",
3
3
  "name": "homebridge-carrier-infinity",
4
- "version": "1.6.8",
4
+ "version": "1.6.9",
5
5
  "description": "Standalone homebridge plugin for Carrier Infinity / Bryant Evolution / ICP Brands Ion thermostats.",
6
6
  "license": "MIT",
7
7
  "repository": {