diff --git a/src/items/items.js b/src/items/items.js index 521fd438..8a5ded4a 100644 --- a/src/items/items.js +++ b/src/items/items.js @@ -261,6 +261,13 @@ class Item { } } + // value is number as string and current state is numeric and both are equal + if (typeof value === 'string' && !isNaN(value) && this.numericState !== null) { + if (parseFloat(value) === this.numericState) { + return false; + } + } + // stringified value and string state are equal value = _toOpenhabPrimitiveType(value); if (value.toString() === this.state) { diff --git a/types/items/items.d.ts.map b/types/items/items.d.ts.map index 77b6c0f2..28afc028 100644 --- a/types/items/items.d.ts.map +++ b/types/items/items.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"items.d.ts","sourceRoot":"","sources":["../../src/items/items.js"],"names":[],"mappings":";;;;;;;UAwBc,MAAM;;;;UACN,MAAM;;;;YACN,MAAM;;;;eACN,MAAM;;;;aACN,MAAM,EAAE;;;;WACR,MAAM,EAAE;;;;eACR,MAAM,MAAO;;;;;;;;iBAEb,MAAM;;;;;;;;;;uBAYP,OAAO,aAAa,EAAE,QAAQ;AAunB3C;;;;;GAKG;AACH,gCAHW,MAAM,GACJ,MAAM,CAIa;AA/DhC;;;;;GAKG;AACH,iCAHW,MAAM,GACJ,OAAO,CASnB;AAED;;;;;;GAMG;AACH,8BAJW,MAAM,kBACN,OAAO,GACL,IAAI,CAYhB;AAED;;;;;GAKG;AACH,4BAFa,IAAI,EAAE,CAIlB;AAzJD;;;;;;;;;;;GAWG;AACH,oCALW,UAAU,GACR,IAAI,CA+BhB;AAoHD;;;;;;GAMG;AACH,2CAHW,MAAM,EAAE,GACN,IAAI,EAAE,CAIlB;AA7ED;;;;;;;;;;;;;;GAcG;AACH,wCALW,UAAU,GACR,IAAI,GAAC,IAAI,CAWrB;AApED;;;;;;GAMG;AACH,2CAHW,MAAM,GAAC,IAAI,GACT,IAAI,GAAC,IAAI,CAuCrB;AA3hBD;;;;GAIG;AACH;IACE;;;;OAIG;IACH,+BAqBC;IAjBC;;;OAGG;IACH,kBAAsB;IAEtB;;;OAGG;IACH,aAFU,eAAe,CAEsB;IAE/C;;;OAGG;IACH,WAFU,aAAa,CAE6B;IAGtD;;;OAGG;IACH,mBAEC;IAED;;;OAGG;IACH,mBAEC;IAED;;;OAGG;IACH,oBAEC;IAED;;;OAGG;IACH,oBAEC;IAED;;;OAGG;IACH,2BAKC;IAED;;;OAGG;IACH,oDAWC;IAED;;;OAGG;IACH,0BAEC;IAED;;;OAGG;IACH,sBAEC;IAED;;;OAGG;IACH,0BAEC;IAED;;;OAGG;IACH,+BASC;IAED;;;;;;;;;;;;;OAaG;IACH,wBAHW,MAAM,GACJ;QAAE,SAAS,EAAE,YAAY,CAAA;KAAE,GAAC,YAAY,GAAC,IAAI,CAIzD;IAED;;;;;;;;OAQG;IACH,2BALW,MAAM,SACN,MAAM,kBACN,MAAM,GACJ;QAAC,aAAa,MAAI;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,GAAC,IAAI,CAIlD;IAED;;;;;;OAMG;IACH,2BAHW,MAAM,GACJ,YAAY,GAAC,IAAI,CAI7B;IAED;;;;;;OAMG;IACH,mBAJW,MAAM,GAAC,MAAM,GAAC,KAAK,aAAa,GAAC,QAAQ,YAAU,QAM7D;IAED;;;;;;OAMG;IACH,8BAJW,MAAM,GAAC,MAAM,GAAC,KAAK,aAAa,GAAC,QAAQ,YAAU,GACjD,OAAO,CA2BnB;IAED;;;;;OAKG;IACH,2BAHW,MAAM,GAAC,QAAQ,YAAU,GACxB,OAAO,CAuBlB;IAED;;;;;OAKG;IACH,2BAHW,MAAM,GAAC,QAAQ,YAAU,GACxB,OAAO,CAuBlB;IAED;;;;;;;OAOG;IACH,sEAkBC;IAED;;;OAGG;IACH,0BAKC;IAED;;;;OAIG;IACH,yBAEC;IAED;;;;;;OAMG;IACH,kBAJW,MAAM,GAAC,MAAM,GAAC,KAAK,aAAa,GAAC,QAAQ,YAAU,QAM7D;IAED;;;OAGG;IACH,2BAEC;IAED;;;OAGG;IACH,6CAIC;IAED;;;OAGG;IACH,gDAMC;IAED;;;OAGG;IACH,qBAEC;IAED;;;OAGG;IACH,qBAFc,MAAM,UAKnB;IAED;;;OAGG;IACH,wBAFc,MAAM,UAOnB;IAED,gBAEC;CACF;;;;;;yBA5ZY,OAAO,eAAe,EAAE,aAAa"} \ No newline at end of file +{"version":3,"file":"items.d.ts","sourceRoot":"","sources":["../../src/items/items.js"],"names":[],"mappings":";;;;;;;UAwBc,MAAM;;;;UACN,MAAM;;;;YACN,MAAM;;;;eACN,MAAM;;;;aACN,MAAM,EAAE;;;;WACR,MAAM,EAAE;;;;eACR,MAAM,MAAO;;;;;;;;iBAEb,MAAM;;;;;;;;;;uBAYP,OAAO,aAAa,EAAE,QAAQ;AA8nB3C;;;;;GAKG;AACH,gCAHW,MAAM,GACJ,MAAM,CAIa;AA/DhC;;;;;GAKG;AACH,iCAHW,MAAM,GACJ,OAAO,CASnB;AAED;;;;;;GAMG;AACH,8BAJW,MAAM,kBACN,OAAO,GACL,IAAI,CAYhB;AAED;;;;;GAKG;AACH,4BAFa,IAAI,EAAE,CAIlB;AAzJD;;;;;;;;;;;GAWG;AACH,oCALW,UAAU,GACR,IAAI,CA+BhB;AAoHD;;;;;;GAMG;AACH,2CAHW,MAAM,EAAE,GACN,IAAI,EAAE,CAIlB;AA7ED;;;;;;;;;;;;;;GAcG;AACH,wCALW,UAAU,GACR,IAAI,GAAC,IAAI,CAWrB;AApED;;;;;;GAMG;AACH,2CAHW,MAAM,GAAC,IAAI,GACT,IAAI,GAAC,IAAI,CAuCrB;AAliBD;;;;GAIG;AACH;IACE;;;;OAIG;IACH,+BAqBC;IAjBC;;;OAGG;IACH,kBAAsB;IAEtB;;;OAGG;IACH,aAFU,eAAe,CAEsB;IAE/C;;;OAGG;IACH,WAFU,aAAa,CAE6B;IAGtD;;;OAGG;IACH,mBAEC;IAED;;;OAGG;IACH,mBAEC;IAED;;;OAGG;IACH,oBAEC;IAED;;;OAGG;IACH,oBAEC;IAED;;;OAGG;IACH,2BAKC;IAED;;;OAGG;IACH,oDAWC;IAED;;;OAGG;IACH,0BAEC;IAED;;;OAGG;IACH,sBAEC;IAED;;;OAGG;IACH,0BAEC;IAED;;;OAGG;IACH,+BASC;IAED;;;;;;;;;;;;;OAaG;IACH,wBAHW,MAAM,GACJ;QAAE,SAAS,EAAE,YAAY,CAAA;KAAE,GAAC,YAAY,GAAC,IAAI,CAIzD;IAED;;;;;;;;OAQG;IACH,2BALW,MAAM,SACN,MAAM,kBACN,MAAM,GACJ;QAAC,aAAa,MAAI;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,GAAC,IAAI,CAIlD;IAED;;;;;;OAMG;IACH,2BAHW,MAAM,GACJ,YAAY,GAAC,IAAI,CAI7B;IAED;;;;;;OAMG;IACH,mBAJW,MAAM,GAAC,MAAM,GAAC,KAAK,aAAa,GAAC,QAAQ,YAAU,QAM7D;IAED;;;;;;OAMG;IACH,8BAJW,MAAM,GAAC,MAAM,GAAC,KAAK,aAAa,GAAC,QAAQ,YAAU,GACjD,OAAO,CAkCnB;IAED;;;;;OAKG;IACH,2BAHW,MAAM,GAAC,QAAQ,YAAU,GACxB,OAAO,CAuBlB;IAED;;;;;OAKG;IACH,2BAHW,MAAM,GAAC,QAAQ,YAAU,GACxB,OAAO,CAuBlB;IAED;;;;;;;OAOG;IACH,sEAkBC;IAED;;;OAGG;IACH,0BAKC;IAED;;;;OAIG;IACH,yBAEC;IAED;;;;;;OAMG;IACH,kBAJW,MAAM,GAAC,MAAM,GAAC,KAAK,aAAa,GAAC,QAAQ,YAAU,QAM7D;IAED;;;OAGG;IACH,2BAEC;IAED;;;OAGG;IACH,6CAIC;IAED;;;OAGG;IACH,gDAMC;IAED;;;OAGG;IACH,qBAEC;IAED;;;OAGG;IACH,qBAFc,MAAM,UAKnB;IAED;;;OAGG;IACH,wBAFc,MAAM,UAOnB;IAED,gBAEC;CACF;;;;;;yBAnaY,OAAO,eAAe,EAAE,aAAa"} \ No newline at end of file diff --git a/types/rules/operation-builder.d.ts b/types/rules/operation-builder.d.ts index dfc66835..896f4efa 100644 --- a/types/rules/operation-builder.d.ts +++ b/types/rules/operation-builder.d.ts @@ -33,7 +33,7 @@ export type Item = { sendCommandIfDifferent(value: any): boolean; sendIncreaseCommand(value: any): boolean; sendDecreaseCommand(value: any): boolean; - getToggleState(): "PAUSE" | "PLAY" | "OPEN" | "CLOSED" | "ON" | "OFF"; /** @private */ + getToggleState(): "PAUSE" | "PLAY" | "OPEN" | "CLOSED" | "ON" | "OFF"; sendToggleCommand(): void; postToggleUpdate(): void; postUpdate(value: any): void; diff --git a/types/rules/operation-builder.d.ts.map b/types/rules/operation-builder.d.ts.map index 61261bee..d843ec5a 100644 --- a/types/rules/operation-builder.d.ts.map +++ b/types/rules/operation-builder.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"operation-builder.d.ts","sourceRoot":"","sources":["../../src/rules/operation-builder.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2EAwdE,eAAe;;;;;;;;;;;;uBA5cJ,OAAO,aAAa,EAAE,QAAQ;AAyS3C;;;;;;GAMG;AACH;IACE,+FAWC;IATC,eAAe;IACf,kBAA0B;IAExB,YAA4B;IAC5B,cAA6C;IAOjD;;;;;SAKK;IACL,sBAHa,IAAI,EAAE,GAAG,MAAM,EAAE,GACf,4BAA4B,CAK1C;IAFC,8BAA8E;IAIhF;;;;;SAKK;IACL,mBAHa,IAAI,GAAG,MAAM,GACX,4BAA4B,CAK1C;IAED;;;;SAIK;IACL,gBAFe,4BAA4B,CAK1C;IAFC,UAAgB;IAIlB,eAAe;IACf,aAYC;IAED,eAAe;IACf,kBAEC;IAED,eAAe;IACf,iBAMC;CACF;AA0CD;;;;;;GAMG;AACH;IACE,iFAeC;IATC,eAAe;IACf,oCAA2D;IAC3D,eAAe;IACf,oBAA4F;IAE5F,eAAe;IACf,kBAAmD;IACnD,eAAe;IACf,iBAA8E;IAGhF,eAAe;IACf,sBAYC;IAED,eAAe;IACf,qBAMC;IAED,eAAe;IACf,mBAEC;IADC,6BAAsD;IAGxD,oBAIC;CACF;AAnGD;;;;;;GAMG;AACH;IAGI,eAAe;IACf,aAAgB;IAChB,uBAAuB;IACvB,iBAGC;IACD,uBAAuB;IACvB,cAGC;IACD,eAAe;IACf,aAAuE;IACvE,eAAe;IACf,kBAA2B;IAC3B,eAAe;IACf,iBAAmG;IAGrG;;;;SAIK;IACL,YAFe,4BAA4B,CAI1C;CACF;AApOD;;;;;;GAMG;AACH;IACE;;;;;SAKK;IACL,yCAHa,OAAO,EAMnB;IADC,cAAgB;IAGlB;;;;;SAKK;IACL,mBAHa,MAAM,GACJ,kBAAkB,CAKhC;IAFC,kBAAyB;IAI3B;;;;;SAKK;IACL,iBAHa,MAAM,GACJ,kBAAkB,CAKhC;IAFC,gBAAuB;IAIzB;;;SAGK;IACL,OAFe,kBAAkB,CAMhC;IAFC,uBAAgB;IAIlB;;;;;SAKK;IACL,aA2BC;IAED;;;;;SAKK;IACL,kBAEC;IAED;;;;;SAKK;IACL,iBAEC;CACF;AAhTD;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AAEH;;;GAGG;AACH;IACE,mCAKC;IAJC,eAAe;IACf,iBAAuB;IACvB,eAAe;IACf,YAAa;IAGf,eAAe;IACf,mBAIC;IAED,eAAe;IACf,cAMC;IAED;;;;;;;SAOK;IACL,aALa,MAAM,gBACN,MAAM,SACN,aAAa,OACb,MAAM,QAOlB;IAED;;;;;SAKK;IACL,eAHa,MAAM,GACJ,gBAAgB,CAK9B;IAFC,cAAkB;IAIpB;;;;;QAKI;IACJ,cAHY,MAAM,GAAC,MAAM,GAAC,KAAK,aAAa,GAAC,QAAQ,YAAU,GACjD,4BAA4B,CAKzC;IAED;;;;;SAKK;IACL,mBAHa,MAAM,GACJ,4BAA4B,CAK1C;IAED;;;;SAIK;IACL,UAFe,4BAA4B,CAK1C;IAED;;;;SAIK;IACL,WAFe,4BAA4B,CAK1C;IAED;;;;;SAKK;IACL,cAFe,eAAe,CAK7B;IAED;;;;;;SAMK;IACL,UAFe,4BAA4B,CAK1C;IAED;;;;;;SAMK;IACL,UAFe,4BAA4B,CAK1C;IAED;;;;;SAKK;IACL,aAFe,kBAAkB,CAKhC;IAED;;;;;SAKK;IACL,oBAFe,kBAAkB,CAKhC;CACF;AAED;;;GAGG;AACH;IACE,mCAEC;IADC,sBAAwC;IAG1C;;;;;SAKK;IACL,eAHa,MAAM,GACJ,gBAAgB,CAK9B;IAFC,cAAkB;IAIpB;;;;;;;SAOK;IACL,aALa,MAAM,gBACN,MAAM,SACN,aAAa,OACb,MAAM,QAIlB;CACF;;yBAjMY,OAAO,eAAe,EAAE,aAAa"} \ No newline at end of file +{"version":3,"file":"operation-builder.d.ts","sourceRoot":"","sources":["../../src/rules/operation-builder.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAYa,OAAO,aAAa,EAAE,QAAQ;AAyS3C;;;;;;GAMG;AACH;IACE,+FAWC;IATC,eAAe;IACf,kBAA0B;IAExB,YAA4B;IAC5B,cAA6C;IAOjD;;;;;SAKK;IACL,sBAHa,IAAI,EAAE,GAAG,MAAM,EAAE,GACf,4BAA4B,CAK1C;IAFC,8BAA8E;IAIhF;;;;;SAKK;IACL,mBAHa,IAAI,GAAG,MAAM,GACX,4BAA4B,CAK1C;IAED;;;;SAIK;IACL,gBAFe,4BAA4B,CAK1C;IAFC,UAAgB;IAIlB,eAAe;IACf,aAYC;IAED,eAAe;IACf,kBAEC;IAED,eAAe;IACf,iBAMC;CACF;AA0CD;;;;;;GAMG;AACH;IACE,iFAeC;IATC,eAAe;IACf,oCAA2D;IAC3D,eAAe;IACf,oBAA4F;IAE5F,eAAe;IACf,kBAAmD;IACnD,eAAe;IACf,iBAA8E;IAGhF,eAAe;IACf,sBAYC;IAED,eAAe;IACf,qBAMC;IAED,eAAe;IACf,mBAEC;IADC,6BAAsD;IAGxD,oBAIC;CACF;AAnGD;;;;;;GAMG;AACH;IAGI,eAAe;IACf,aAAgB;IAChB,uBAAuB;IACvB,iBAGC;IACD,uBAAuB;IACvB,cAGC;IACD,eAAe;IACf,aAAuE;IACvE,eAAe;IACf,kBAA2B;IAC3B,eAAe;IACf,iBAAmG;IAGrG;;;;SAIK;IACL,YAFe,4BAA4B,CAI1C;CACF;AApOD;;;;;;GAMG;AACH;IACE;;;;;SAKK;IACL,yCAHa,OAAO,EAMnB;IADC,cAAgB;IAGlB;;;;;SAKK;IACL,mBAHa,MAAM,GACJ,kBAAkB,CAKhC;IAFC,kBAAyB;IAI3B;;;;;SAKK;IACL,iBAHa,MAAM,GACJ,kBAAkB,CAKhC;IAFC,gBAAuB;IAIzB;;;SAGK;IACL,OAFe,kBAAkB,CAMhC;IAFC,uBAAgB;IAIlB;;;;;SAKK;IACL,aA2BC;IAED;;;;;SAKK;IACL,kBAEC;IAED;;;;;SAKK;IACL,iBAEC;CACF;AAhTD;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AAEH;;;GAGG;AACH;IACE,mCAKC;IAJC,eAAe;IACf,iBAAuB;IACvB,eAAe;IACf,YAAa;IAGf,eAAe;IACf,mBAIC;IAED,eAAe;IACf,cAMC;IAED;;;;;;;SAOK;IACL,aALa,MAAM,gBACN,MAAM,SACN,aAAa,OACb,MAAM,QAOlB;IAED;;;;;SAKK;IACL,eAHa,MAAM,GACJ,gBAAgB,CAK9B;IAFC,cAAkB;IAIpB;;;;;QAKI;IACJ,cAHY,MAAM,GAAC,MAAM,GAAC,KAAK,aAAa,GAAC,QAAQ,YAAU,GACjD,4BAA4B,CAKzC;IAED;;;;;SAKK;IACL,mBAHa,MAAM,GACJ,4BAA4B,CAK1C;IAED;;;;SAIK;IACL,UAFe,4BAA4B,CAK1C;IAED;;;;SAIK;IACL,WAFe,4BAA4B,CAK1C;IAED;;;;;SAKK;IACL,cAFe,eAAe,CAK7B;IAED;;;;;;SAMK;IACL,UAFe,4BAA4B,CAK1C;IAED;;;;;;SAMK;IACL,UAFe,4BAA4B,CAK1C;IAED;;;;;SAKK;IACL,aAFe,kBAAkB,CAKhC;IAED;;;;;SAKK;IACL,oBAFe,kBAAkB,CAKhC;CACF;AAED;;;GAGG;AACH;IACE,mCAEC;IADC,sBAAwC;IAG1C;;;;;SAKK;IACL,eAHa,MAAM,GACJ,gBAAgB,CAK9B;IAFC,cAAkB;IAIpB;;;;;;;SAOK;IACL,aALa,MAAM,gBACN,MAAM,SACN,aAAa,OACb,MAAM,QAIlB;CACF;;yBAjMY,OAAO,eAAe,EAAE,aAAa"} \ No newline at end of file