mclimate-payload-helper 1.2.7 → 1.2.8

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 (70) hide show
  1. package/dist/decoders/commandsReadingHelper.d.ts.map +1 -1
  2. package/dist/decoders/commandsReadingHelper.js +36 -0
  3. package/dist/decoders/commandsReadingHelper.js.map +1 -1
  4. package/dist/decoders/payloadParsers/co2PirLitePayloadParser.d.ts.map +1 -1
  5. package/dist/decoders/payloadParsers/co2PirLitePayloadParser.js +25 -23
  6. package/dist/decoders/payloadParsers/co2PirLitePayloadParser.js.map +1 -1
  7. package/dist/decoders/payloadParsers/htPirLitePayloadParser.d.ts.map +1 -1
  8. package/dist/decoders/payloadParsers/htPirLitePayloadParser.js +20 -20
  9. package/dist/decoders/payloadParsers/htPirLitePayloadParser.js.map +1 -1
  10. package/dist/encoders/Co2DisplayCommonCommands.d.ts +4 -0
  11. package/dist/encoders/Co2DisplayCommonCommands.d.ts.map +1 -1
  12. package/dist/encoders/Co2DisplayCommonCommands.js +38 -0
  13. package/dist/encoders/Co2DisplayCommonCommands.js.map +1 -1
  14. package/dist/encoders/Co2PirLiteCommands.d.ts +6 -2
  15. package/dist/encoders/Co2PirLiteCommands.d.ts.map +1 -1
  16. package/dist/encoders/Co2PirLiteCommands.js +66 -13
  17. package/dist/encoders/Co2PirLiteCommands.js.map +1 -1
  18. package/dist/encoders/HTPirLiteCommands.d.ts +6 -2
  19. package/dist/encoders/HTPirLiteCommands.d.ts.map +1 -1
  20. package/dist/encoders/HTPirLiteCommands.js +67 -12
  21. package/dist/encoders/HTPirLiteCommands.js.map +1 -1
  22. package/dist/encoders/types/schemas.d.ts +80 -170
  23. package/dist/encoders/types/schemas.d.ts.map +1 -1
  24. package/dist/encoders/types/schemas.js +29 -7
  25. package/dist/encoders/types/schemas.js.map +1 -1
  26. package/dist/test/payloadDecoders.test.js +26 -21
  27. package/dist/test/payloadDecoders.test.js.map +1 -1
  28. package/dist/test/payloadEncoders.test.js +8 -14
  29. package/dist/test/payloadEncoders.test.js.map +1 -1
  30. package/package.json +1 -1
  31. package/src/decoders/commandsReadingHelper.ts +34 -0
  32. package/src/decoders/payloadParsers/co2PirLitePayloadParser.ts +28 -23
  33. package/src/decoders/payloadParsers/htPirLitePayloadParser.ts +22 -20
  34. package/src/encoders/Co2PirLiteCommands.ts +66 -14
  35. package/src/encoders/HTPirLiteCommands.ts +67 -13
  36. package/src/encoders/types/schemas.ts +50 -12
  37. package/src/test/payloadDecoders.test.ts +26 -26
  38. package/src/test/payloadEncoders.test.ts +12 -22
  39. package/dist/encoders/FanCoilThermostat.d.ts +0 -61
  40. package/dist/encoders/FanCoilThermostat.d.ts.map +0 -1
  41. package/dist/encoders/FanCoilThermostat.js +0 -719
  42. package/dist/encoders/FanCoilThermostat.js.map +0 -1
  43. package/dist/encoders/SetAqiLed.d.ts +0 -6
  44. package/dist/encoders/SetAqiLed.d.ts.map +0 -1
  45. package/dist/encoders/SetAqiLed.js +0 -46
  46. package/dist/encoders/SetAqiLed.js.map +0 -1
  47. package/dist/encoders/types/enumValidation.d.ts +0 -6
  48. package/dist/encoders/types/enumValidation.d.ts.map +0 -1
  49. package/dist/encoders/types/enumValidation.js +0 -50
  50. package/dist/encoders/types/enumValidation.js.map +0 -1
  51. package/dist/encoders/types/schemaValidatedEnums.d.ts +0 -40
  52. package/dist/encoders/types/schemaValidatedEnums.d.ts.map +0 -1
  53. package/dist/encoders/types/schemaValidatedEnums.js +0 -181
  54. package/dist/encoders/types/schemaValidatedEnums.js.map +0 -1
  55. package/dist/types/deviceTypes.d.ts +0 -19
  56. package/dist/types/deviceTypes.d.ts.map +0 -1
  57. package/dist/types/deviceTypes.js +0 -23
  58. package/dist/types/deviceTypes.js.map +0 -1
  59. package/dist/types/index.d.ts +0 -2
  60. package/dist/types/index.d.ts.map +0 -1
  61. package/dist/types/index.js +0 -18
  62. package/dist/types/index.js.map +0 -1
  63. package/dist/types/types.d.ts +0 -13
  64. package/dist/types/types.d.ts.map +0 -1
  65. package/dist/types/types.js +0 -9
  66. package/dist/types/types.js.map +0 -1
  67. package/dist/validation.d.ts +0 -3
  68. package/dist/validation.d.ts.map +0 -1
  69. package/dist/validation.js +0 -8
  70. package/dist/validation.js.map +0 -1
@@ -10,25 +10,25 @@ const htPirLitePayloadParser = (hexData) => {
10
10
  try {
11
11
  const handleKeepAliveData = (bytes) => {
12
12
  const keepaliveData = {};
13
- // Bytes 1-2: Internal temperature sensor data
14
- // Formula: t[°C] = (T[15:0]-400)/10
15
- const tempMsb = bytes[1]; // bits 15:8
16
- const tempLsb = bytes[2]; // bits 7:0
17
- const rawTemperature = (tempMsb << 8) | tempLsb;
18
- keepaliveData.sensorTemperature = Number(((rawTemperature - 400) / 10).toFixed(2));
13
+ // Byte 1 bit 2: Occupied flag
14
+ keepaliveData.pir = ((bytes[1] & 0x04) >> 2) === 1;
15
+ // Byte 1 (bits 1:0) and Byte 2: Internal temperature sensor data
16
+ // Formula: t[°C] = (T[9:0] - 400) / 10
17
+ // Extract bits 1:0 from byte 1 for the higher bits (bits 9:8)
18
+ const tempHighBits = (bytes[1] & 0x03) << 8;
19
+ // Use all bits from byte 2 for the lower bits (bits 7:0)
20
+ const tempLowBits = bytes[2];
21
+ // Combine to get the full 10-bit temperature value
22
+ const tempValue = tempHighBits | tempLowBits;
23
+ keepaliveData.sensorTemperature = Number(((tempValue - 400) / 10).toFixed(2));
19
24
  // Byte 3: Relative Humidity data
20
- // Formula: RH[%] = (XX*100)/256
25
+ // Formula: RH[%] = (XX * 100) / 256
21
26
  keepaliveData.relativeHumidity = Number(((bytes[3] * 100) / 256).toFixed(2));
22
- // Bytes 4-5: Device battery voltage data
23
- // Battery voltage [mV]
24
- const batteryMsb = bytes[4]; // bits 15:8
25
- const batteryLsb = bytes[5]; // bits 7:0
26
- keepaliveData.batteryVoltage = Number((((batteryMsb << 8) | batteryLsb) / 1000).toFixed(2));
27
- // Byte 6: PIR sensor status (only bit 0 is used, other bits are reserved)
28
- // 0 - No motion detected
29
- // 1 - Motion detected
30
- const pirValue = bytes[6] & 0x01; // Extract only the last bit
31
- keepaliveData.pir = pirValue === 1;
27
+ // Byte 4: Device battery voltage data
28
+ // Battery voltage [mV] = ((XX * 2200) / 255) + 1600
29
+ keepaliveData.batteryVoltage = Number(((((bytes[4] * 2200) / 255) + 1600) / 1000).toFixed(2));
30
+ // Byte 5: PIR trigger count
31
+ keepaliveData.pirTriggerCount = bytes[5];
32
32
  Object.assign(deviceData, Object.assign({}, deviceData), Object.assign({}, keepaliveData));
33
33
  };
34
34
  if (hexData) {
@@ -36,7 +36,7 @@ const htPirLitePayloadParser = (hexData) => {
36
36
  if (!byteArray)
37
37
  return;
38
38
  // Route the message based on the command byte
39
- if (byteArray[0] == 1) {
39
+ if (byteArray[0] == 81) {
40
40
  // This is a keepalive message
41
41
  handleKeepAliveData(byteArray);
42
42
  }
@@ -52,8 +52,8 @@ const htPirLitePayloadParser = (hexData) => {
52
52
  Object.assign(deviceData, Object.assign({}, deviceData), Object.assign({}, data));
53
53
  // Handle the remaining keepalive data if present
54
54
  if (shouldKeepAlive) {
55
- // Extract the last 7 bytes which contain keepalive data for HT-PIR-Lite
56
- const keepaliveData = hexData.slice(-14); // 7 bytes = 14 hex chars
55
+ // Extract the last 6 bytes which contain keepalive data for HT-PIR-Lite
56
+ const keepaliveData = hexData.slice(-12); // 6 bytes = 12 hex chars
57
57
  const dataToPass = (0, helpers_1.byteArrayParser)(keepaliveData);
58
58
  if (!dataToPass)
59
59
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"htPirLitePayloadParser.js","sourceRoot":"","sources":["../../../src/decoders/payloadParsers/htPirLitePayloadParser.ts"],"names":[],"mappings":";;;AAAA,4EAAwE;AACxE,2DAA4D;AAC5D,uCAA2C;AAC3C,mCAAqC;AAS9B,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAAE,EAAE;IACzD,MAAM,UAAU,GAA4B,EAAE,CAAA;IAE9C,IAAI,CAAC;QACJ,MAAM,mBAAmB,GAAG,CAAC,KAAe,EAAE,EAAE;YAC/C,MAAM,aAAa,GAAkB,EAAE,CAAA;YAEvC,8CAA8C;YAC9C,oCAAoC;YACpC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,YAAY;YACrC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,WAAW;YACpC,MAAM,cAAc,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,OAAO,CAAA;YAC/C,aAAa,CAAC,iBAAiB,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAElF,iCAAiC;YACjC,gCAAgC;YAChC,aAAa,CAAC,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAE5E,yCAAyC;YACzC,uBAAuB;YACvB,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,YAAY;YACxC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,WAAW;YACvC,aAAa,CAAC,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAE3F,0EAA0E;YAC1E,yBAAyB;YACzB,sBAAsB;YACtB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA,CAAC,4BAA4B;YAC7D,aAAa,CAAC,GAAG,GAAG,QAAQ,KAAK,CAAC,CAAA;YAElC,MAAM,CAAC,MAAM,CAAC,UAAU,oBAAO,UAAU,qBAAS,aAAa,EAAG,CAAA;QACnE,CAAC,CAAA;QAED,IAAI,OAAO,EAAE,CAAC;YACb,MAAM,SAAS,GAAG,IAAA,yBAAe,EAAC,OAAO,CAAC,CAAA;YAC1C,IAAI,CAAC,SAAS;gBAAE,OAAM;YAEtB,8CAA8C;YAC9C,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,8BAA8B;gBAC9B,mBAAmB,CAAC,SAAS,CAAC,CAAA;YAC/B,CAAC;iBAAM,CAAC;gBACP,wBAAwB;gBACxB,MAAM,IAAI,GAAG,IAAA,6CAAqB,EAAC,OAAO,EAAE,EAAE,EAAE,kBAAU,CAAC,SAAS,CAAwC,CAAA;gBAC5G,IAAI,CAAC,IAAI;oBAAE,OAAM;gBACjB,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;gBACrF,IAAI,iBAAiB,IAAI,IAAI,EAAE,CAAC;oBAC/B,OAAO,IAAI,CAAC,eAAe,CAAA;gBAC5B,CAAC;gBAED,MAAM,CAAC,MAAM,CAAC,UAAU,oBAAO,UAAU,qBAAS,IAAI,EAAG,CAAA;gBAEzD,iDAAiD;gBACjD,IAAI,eAAe,EAAE,CAAC;oBACrB,wEAAwE;oBACxE,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAA,CAAC,yBAAyB;oBAClE,MAAM,UAAU,GAAG,IAAA,yBAAe,EAAC,aAAa,CAAC,CAAA;oBACjD,IAAI,CAAC,UAAU;wBAAE,OAAM;oBACvB,mBAAmB,CAAC,UAAU,CAAC,CAAA;gBAChC,CAAC;YACF,CAAC;YACD,OAAO,UAAU,CAAA;QAClB,CAAC;IACF,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,MAAM,IAAI,mBAAW,CAAC;YACrB,OAAO,EAAE,gBAAgB;YACzB,OAAO,EAAE,OAAO;YAChB,UAAU,EAAE,aAAa;YACzB,aAAa,EAAE,CAAU;SACzB,CAAC,CAAA;IACH,CAAC;AACF,CAAC,CAAA;AAvEY,QAAA,sBAAsB,0BAuElC"}
1
+ {"version":3,"file":"htPirLitePayloadParser.js","sourceRoot":"","sources":["../../../src/decoders/payloadParsers/htPirLitePayloadParser.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,7 @@
1
+ import { BaseCommand } from '../encoders';
2
+ import { Co2CommonDisplayCommandTypes } from '../encoders/types';
1
3
  export declare class Co2DisplayCommonCommands {
4
+ static setCo2ImagesVisibility(params: Co2CommonDisplayCommandTypes.SetCo2ImagesVisibilityParams): BaseCommand;
5
+ static getCo2ImagesVisibility(): BaseCommand;
2
6
  }
3
7
  //# sourceMappingURL=Co2DisplayCommonCommands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Co2DisplayCommonCommands.d.ts","sourceRoot":"","sources":["../../src/encoders/Co2DisplayCommonCommands.ts"],"names":[],"mappings":"AAKA,qBAAa,wBAAwB;CAAG"}
1
+ {"version":3,"file":"Co2DisplayCommonCommands.d.ts","sourceRoot":"","sources":["../../src/encoders/Co2DisplayCommonCommands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAGxC,OAAO,EAAE,4BAA4B,EAAwB,MAAM,kBAAkB,CAAA;AAErF,qBAAa,wBAAwB;IACpC,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,4BAA4B,CAAC,4BAA4B;IAgC/F,MAAM,CAAC,sBAAsB;CAG7B"}
@@ -1,7 +1,45 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Co2DisplayCommonCommands = void 0;
4
+ const encoders_1 = require("../encoders");
5
+ const zod_1 = require("zod");
6
+ const utils_1 = require("../utils");
7
+ const types_1 = require("../encoders/types");
4
8
  class Co2DisplayCommonCommands {
9
+ static setCo2ImagesVisibility(params) {
10
+ try {
11
+ types_1.DeviceCommandSchemas.Co2CommonDisplayCommandSchemas.setCo2ImagesVisibility.parse(params);
12
+ const { chart, digital_value, emoji } = params;
13
+ const chartValue = chart ? 1 : 0;
14
+ const digitalValue = digital_value ? 1 : 0;
15
+ const emojiValue = emoji ? 1 : 0;
16
+ let bin = '00000000'.split('');
17
+ bin[7] = emojiValue.toString();
18
+ bin[6] = digitalValue.toString();
19
+ bin[5] = chartValue.toString();
20
+ const binValue = parseInt(bin.join(''), 2);
21
+ return new encoders_1.BaseCommand('SetCo2ImagesVisibility', 0x82, (0, utils_1.decToHex)(binValue));
22
+ }
23
+ catch (e) {
24
+ if (e instanceof zod_1.ZodError) {
25
+ throw new utils_1.CustomError({
26
+ message: 'Zod validation error during SetCo2ImagesVisibility execution',
27
+ command: 'SetCo2ImagesVisibility',
28
+ originalError: e,
29
+ });
30
+ }
31
+ else {
32
+ throw new utils_1.CustomError({
33
+ message: 'Error during SetCo2ImagesVisibility execution',
34
+ command: 'SetCo2ImagesVisibility',
35
+ originalError: e,
36
+ });
37
+ }
38
+ }
39
+ }
40
+ static getCo2ImagesVisibility() {
41
+ return new encoders_1.BaseCommand('GetCo2ImagesVisibility', 0x83);
42
+ }
5
43
  }
6
44
  exports.Co2DisplayCommonCommands = Co2DisplayCommonCommands;
7
45
  //# sourceMappingURL=Co2DisplayCommonCommands.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Co2DisplayCommonCommands.js","sourceRoot":"","sources":["../../src/encoders/Co2DisplayCommonCommands.ts"],"names":[],"mappings":";;;AAKA,MAAa,wBAAwB;CAAG;AAAxC,4DAAwC"}
1
+ {"version":3,"file":"Co2DisplayCommonCommands.js","sourceRoot":"","sources":["../../src/encoders/Co2DisplayCommonCommands.ts"],"names":[],"mappings":";;;AAAA,yCAAwC;AACxC,6BAA8B;AAC9B,mCAA+C;AAC/C,4CAAqF;AAErF,MAAa,wBAAwB;IACpC,MAAM,CAAC,sBAAsB,CAAC,MAAiE;QAC9F,IAAI,CAAC;YACJ,4BAAoB,CAAC,8BAA8B,CAAC,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACxF,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;YAC9C,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAChC,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAEhC,IAAI,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC9B,GAAG,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAA;YAC9B,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAA;YAChC,GAAG,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAA;YAC9B,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;YAE1C,OAAO,IAAI,sBAAW,CAAC,wBAAwB,EAAE,IAAI,EAAE,IAAA,gBAAQ,EAAC,QAAQ,CAAC,CAAC,CAAA;QAC3E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,cAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,8DAA8D;oBACvE,OAAO,EAAE,wBAAwB;oBACjC,aAAa,EAAE,CAAC;iBAChB,CAAC,CAAA;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,+CAA+C;oBACxD,OAAO,EAAE,wBAAwB;oBACjC,aAAa,EAAE,CAAU;iBACzB,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,MAAM,CAAC,sBAAsB;QAC5B,OAAO,IAAI,sBAAW,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAA;IACvD,CAAC;CACD;AApCD,4DAoCC"}
@@ -2,8 +2,12 @@ import { GeneralCommands } from '../encoders';
2
2
  import { Co2PirLiteCommandTypes } from '../encoders/types';
3
3
  import { BaseCommand } from '../encoders';
4
4
  export declare class Co2PirLiteCommands extends GeneralCommands {
5
- static setUplinkSendingOnButtonPress(params: Co2PirLiteCommandTypes.SetUplinkSendingOnButtonPressParams): BaseCommand;
6
- static getUplinkSendingOnButtonPress(): BaseCommand;
5
+ static setPIRSensorState(params: Co2PirLiteCommandTypes.SetPIRSensorStateParams): BaseCommand;
6
+ static getPIRSensorState(): BaseCommand;
7
+ static setPIRSensorSensitivity(params: Co2PirLiteCommandTypes.SetPIRSensorSensitivityParams): BaseCommand;
8
+ static getPIRSensorSensitivity(): BaseCommand;
9
+ static setOccupancyTimeout(params: Co2PirLiteCommandTypes.SetOccupancyTimeoutParams): BaseCommand;
10
+ static getOccupancyTimeout(): BaseCommand;
7
11
  static restartDevice(): BaseCommand;
8
12
  }
9
13
  //# sourceMappingURL=Co2PirLiteCommands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Co2PirLiteCommands.d.ts","sourceRoot":"","sources":["../../src/encoders/Co2PirLiteCommands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAkC,MAAM,YAAY,CAAA;AAE5E,OAAO,EAAE,sBAAsB,EAAwB,MAAM,kBAAkB,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAKxC,qBAAa,kBAAmB,SAAQ,eAAe;IACtD,MAAM,CAAC,6BAA6B,CAAC,MAAM,EAAE,sBAAsB,CAAC,mCAAmC;IAsBvG,MAAM,CAAC,6BAA6B;IAIpC,MAAM,CAAC,aAAa;CAGpB"}
1
+ {"version":3,"file":"Co2PirLiteCommands.d.ts","sourceRoot":"","sources":["../../src/encoders/Co2PirLiteCommands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAqB,MAAM,YAAY,CAAA;AAE/D,OAAO,EAAE,sBAAsB,EAAwB,MAAM,kBAAkB,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAKxC,qBAAa,kBAAmB,SAAQ,eAAe;IACrD,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,sBAAsB,CAAC,uBAAuB;IAqBhF,MAAM,CAAC,iBAAiB;IAGxB,MAAM,CAAC,uBAAuB,CAAC,MAAM,EAAE,sBAAsB,CAAC,6BAA6B;IAsB3F,MAAM,CAAC,uBAAuB;IAI9B,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,sBAAsB,CAAC,yBAAyB;IA0BnF,MAAM,CAAC,mBAAmB;IAI1B,MAAM,CAAC,aAAa;CAGpB"}
@@ -9,41 +9,94 @@ const zod_1 = require("zod");
9
9
  const utils_2 = require("../utils");
10
10
  const utils_3 = require("../utils");
11
11
  class Co2PirLiteCommands extends encoders_1.GeneralCommands {
12
- static setUplinkSendingOnButtonPress(params) {
12
+ static setPIRSensorState(params) {
13
13
  try {
14
- types_1.DeviceCommandSchemas.Co2PirLiteCommandSchemas.setUplinkSendingOnButtonPress.parse(params);
15
- const { value } = params;
16
- return new encoders_2.BaseCommand('SetUplinkSendingOnButtonPress', 0x2e, (0, utils_3.decToHex)(value));
14
+ types_1.DeviceCommandSchemas.Co2PirLiteCommandSchemas.setPIRSensorState.parse(params);
15
+ const { state } = params;
16
+ return new encoders_2.BaseCommand('SetPIRSensorState', 0x36, (0, utils_3.decToHex)(state));
17
17
  }
18
18
  catch (e) {
19
19
  if (e instanceof zod_1.ZodError) {
20
20
  throw new utils_2.CustomError({
21
- message: 'Zod validation error during SetUplinkSendingOnButtonPress execution',
22
- command: 'SetUplinkSendingOnButtonPress',
21
+ message: 'Zod validation error during SetPIRSensorState execution',
22
+ command: 'SetPIRSensorState',
23
23
  originalError: e,
24
24
  });
25
25
  }
26
26
  else {
27
27
  throw new utils_2.CustomError({
28
- message: 'Error during SetUplinkSendingOnButtonPress execution',
29
- command: 'SetUplinkSendingOnButtonPress',
28
+ message: 'Error during SetPIRSensorState execution',
29
+ command: 'SetPIRSensorState',
30
30
  originalError: e,
31
31
  });
32
32
  }
33
33
  }
34
34
  }
35
- static getUplinkSendingOnButtonPress() {
36
- return new encoders_2.BaseCommand('GetUplinkSendingOnButtonPress', 0x2f);
35
+ static getPIRSensorState() {
36
+ return new encoders_2.BaseCommand('GetPIRSensorState', 0x37);
37
+ }
38
+ static setPIRSensorSensitivity(params) {
39
+ try {
40
+ types_1.DeviceCommandSchemas.Co2PirLiteCommandSchemas.setPIRSensorSensitivity.parse(params);
41
+ const { sensitivity } = params;
42
+ return new encoders_2.BaseCommand('SetPIRSensorSensitivity', 0x3e, (0, utils_3.decToHex)(sensitivity));
43
+ }
44
+ catch (e) {
45
+ if (e instanceof zod_1.ZodError) {
46
+ throw new utils_2.CustomError({
47
+ message: 'Zod validation error during SetPIRSensorSensitivity execution',
48
+ command: 'SetPIRSensorSensitivity',
49
+ originalError: e,
50
+ });
51
+ }
52
+ else {
53
+ throw new utils_2.CustomError({
54
+ message: 'Error during SetPIRSensorSensitivity execution',
55
+ command: 'SetPIRSensorSensitivity',
56
+ originalError: e,
57
+ });
58
+ }
59
+ }
60
+ }
61
+ static getPIRSensorSensitivity() {
62
+ return new encoders_2.BaseCommand('GetPIRSensorSensitivity', 0x3f);
63
+ }
64
+ static setOccupancyTimeout(params) {
65
+ try {
66
+ types_1.DeviceCommandSchemas.Co2PirLiteCommandSchemas.setOccupancyTimeout.parse(params);
67
+ const { timeout } = params;
68
+ // Convert timeout to two bytes (high byte and low byte)
69
+ const highByte = (timeout >> 8) & 0xFF;
70
+ const lowByte = timeout & 0xFF;
71
+ return new encoders_2.BaseCommand('SetOccupancyTimeout', 0x38, (0, utils_3.decToHex)(highByte) + (0, utils_3.decToHex)(lowByte));
72
+ }
73
+ catch (e) {
74
+ if (e instanceof zod_1.ZodError) {
75
+ throw new utils_2.CustomError({
76
+ message: 'Zod validation error during SetOccupancyTimeout execution',
77
+ command: 'SetOccupancyTimeout',
78
+ originalError: e,
79
+ });
80
+ }
81
+ else {
82
+ throw new utils_2.CustomError({
83
+ message: 'Error during SetOccupancyTimeout execution',
84
+ command: 'SetOccupancyTimeout',
85
+ originalError: e,
86
+ });
87
+ }
88
+ }
89
+ }
90
+ static getOccupancyTimeout() {
91
+ return new encoders_2.BaseCommand('GetOccupancyTimeout', 0x39);
37
92
  }
38
93
  static restartDevice() {
39
94
  return new encoders_2.BaseCommand('RestartDevice', 0xa5);
40
95
  }
41
96
  }
42
97
  exports.Co2PirLiteCommands = Co2PirLiteCommands;
43
- (0, utils_1.applyMixins)(Co2PirLiteCommands, [encoders_1.GeneralCommands, encoders_1.PIRCommands, encoders_1.CO2SensorCommands]);
98
+ (0, utils_1.applyMixins)(Co2PirLiteCommands, [encoders_1.GeneralCommands, encoders_1.CO2SensorCommands]);
44
99
  (0, utils_1.delMethods)(Co2PirLiteCommands, [
45
- 'setPIRInitPeriod',
46
- 'getPIRInitPeriod',
47
100
  'setNotifyPeriod',
48
101
  'getNotifyPeriod',
49
102
  'setBuzzerNotification',
@@ -1 +1 @@
1
- {"version":3,"file":"Co2PirLiteCommands.js","sourceRoot":"","sources":["../../src/encoders/Co2PirLiteCommands.ts"],"names":[],"mappings":";;;AAAA,yCAA4E;AAC5E,mCAAiD;AACjD,4CAA+E;AAC/E,yCAAwC;AACxC,6BAA8B;AAC9B,mCAAqC;AACrC,mCAAkC;AAElC,MAAa,kBAAmB,SAAQ,0BAAe;IACtD,MAAM,CAAC,6BAA6B,CAAC,MAAkE;QACtG,IAAI,CAAC;YACJ,4BAAoB,CAAC,wBAAwB,CAAC,6BAA6B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACzF,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;YACxB,OAAO,IAAI,sBAAW,CAAC,+BAA+B,EAAE,IAAI,EAAE,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,CAAA;QAC/E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,cAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,qEAAqE;oBAC9E,OAAO,EAAE,+BAA+B;oBACxC,aAAa,EAAE,CAAC;iBAChB,CAAC,CAAA;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,sDAAsD;oBAC/D,OAAO,EAAE,+BAA+B;oBACxC,aAAa,EAAE,CAAU;iBACzB,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,MAAM,CAAC,6BAA6B;QACnC,OAAO,IAAI,sBAAW,CAAC,+BAA+B,EAAE,IAAI,CAAC,CAAA;IAC9D,CAAC;IAED,MAAM,CAAC,aAAa;QACnB,OAAO,IAAI,sBAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;IAC9C,CAAC;CACD;AA9BD,gDA8BC;AAED,IAAA,mBAAW,EAAC,kBAAkB,EAAE,CAAC,0BAAe,EAAE,sBAAW,EAAE,4BAAiB,CAAC,CAAC,CAAA;AAElF,IAAA,kBAAU,EAAC,kBAAkB,EAAE;IAC9B,kBAAkB;IAClB,kBAAkB;IAClB,iBAAiB;IACjB,iBAAiB;IACjB,uBAAuB;IACvB,uBAAuB;IACvB,WAAW;IACX,WAAW;CACX,CAAC,CAAA"}
1
+ {"version":3,"file":"Co2PirLiteCommands.js","sourceRoot":"","sources":["../../src/encoders/Co2PirLiteCommands.ts"],"names":[],"mappings":";;;AAAA,yCAA+D;AAC/D,mCAAiD;AACjD,4CAA+E;AAC/E,yCAAwC;AACxC,6BAA8B;AAC9B,mCAAqC;AACrC,mCAAkC;AAElC,MAAa,kBAAmB,SAAQ,0BAAe;IACrD,MAAM,CAAC,iBAAiB,CAAC,MAAsD;QAC/E,IAAI,CAAC;YACJ,4BAAoB,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAC7E,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;YACxB,OAAO,IAAI,sBAAW,CAAC,mBAAmB,EAAE,IAAI,EAAE,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,CAAA;QACnE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,cAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,yDAAyD;oBAClE,OAAO,EAAE,mBAAmB;oBAC5B,aAAa,EAAE,CAAC;iBAChB,CAAC,CAAA;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,0CAA0C;oBACnD,OAAO,EAAE,mBAAmB;oBAC5B,aAAa,EAAE,CAAU;iBACzB,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IACD,MAAM,CAAC,iBAAiB;QACvB,OAAO,IAAI,sBAAW,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAA;IAClD,CAAC;IACD,MAAM,CAAC,uBAAuB,CAAC,MAA4D;QAC1F,IAAI,CAAC;YACJ,4BAAoB,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACnF,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAA;YAC9B,OAAO,IAAI,sBAAW,CAAC,yBAAyB,EAAE,IAAI,EAAE,IAAA,gBAAQ,EAAC,WAAW,CAAC,CAAC,CAAA;QAC/E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,cAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,+DAA+D;oBACxE,OAAO,EAAE,yBAAyB;oBAClC,aAAa,EAAE,CAAC;iBAChB,CAAC,CAAA;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,gDAAgD;oBACzD,OAAO,EAAE,yBAAyB;oBAClC,aAAa,EAAE,CAAU;iBACzB,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC7B,OAAO,IAAI,sBAAW,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAC,MAAwD;QAClF,IAAI,CAAC;YACJ,4BAAoB,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAC/E,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;YAC1B,wDAAwD;YACxD,MAAM,QAAQ,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,IAAI,CAAA;YACtC,MAAM,OAAO,GAAG,OAAO,GAAG,IAAI,CAAA;YAE9B,OAAO,IAAI,sBAAW,CAAC,qBAAqB,EAAE,IAAI,EAAE,IAAA,gBAAQ,EAAC,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,OAAO,CAAC,CAAC,CAAA;QAC5F,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,cAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,2DAA2D;oBACpE,OAAO,EAAE,qBAAqB;oBAC9B,aAAa,EAAE,CAAC;iBAChB,CAAC,CAAA;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,4CAA4C;oBACrD,OAAO,EAAE,qBAAqB;oBAC9B,aAAa,EAAE,CAAU;iBACzB,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,MAAM,CAAC,mBAAmB;QACzB,OAAO,IAAI,sBAAW,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAA;IACpD,CAAC;IAED,MAAM,CAAC,aAAa;QACnB,OAAO,IAAI,sBAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;IAC9C,CAAC;CACD;AApFD,gDAoFC;AAED,IAAA,mBAAW,EAAC,kBAAkB,EAAE,CAAC,0BAAe,EAAE,4BAAiB,CAAC,CAAC,CAAA;AAErE,IAAA,kBAAU,EAAC,kBAAkB,EAAE;IAC9B,iBAAiB;IACjB,iBAAiB;IACjB,uBAAuB;IACvB,uBAAuB;IACvB,WAAW;IACX,WAAW;CACX,CAAC,CAAA"}
@@ -2,8 +2,12 @@ import { GeneralCommands } from '../encoders';
2
2
  import { HTPirLiteCommandTypes } from '../encoders/types';
3
3
  import { BaseCommand } from '../encoders';
4
4
  export declare class HTPirLiteCommands extends GeneralCommands {
5
- static setUplinkSendingOnButtonPress(params: HTPirLiteCommandTypes.SetUplinkSendingOnButtonPressParams): BaseCommand;
6
- static getUplinkSendingOnButtonPress(): BaseCommand;
5
+ static setPIRSensorState(params: HTPirLiteCommandTypes.SetPIRSensorStateParams): BaseCommand;
6
+ static getPIRSensorState(): BaseCommand;
7
+ static setPIRSensorSensitivity(params: HTPirLiteCommandTypes.SetPIRSensorSensitivityParams): BaseCommand;
8
+ static getPIRSensorSensitivity(): BaseCommand;
9
+ static setOccupancyTimeout(params: HTPirLiteCommandTypes.SetOccupancyTimeoutParams): BaseCommand;
10
+ static getOccupancyTimeout(): BaseCommand;
7
11
  static restartDevice(): BaseCommand;
8
12
  }
9
13
  //# sourceMappingURL=HTPirLiteCommands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HTPirLiteCommands.d.ts","sourceRoot":"","sources":["../../src/encoders/HTPirLiteCommands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAe,MAAM,YAAY,CAAA;AAEzD,OAAO,EAAE,qBAAqB,EAAwB,MAAM,kBAAkB,CAAA;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAKxC,qBAAa,iBAAkB,SAAQ,eAAe;IACrD,MAAM,CAAC,6BAA6B,CAAC,MAAM,EAAE,qBAAqB,CAAC,mCAAmC;IAsBtG,MAAM,CAAC,6BAA6B;IAIpC,MAAM,CAAC,aAAa;CAGpB"}
1
+ {"version":3,"file":"HTPirLiteCommands.d.ts","sourceRoot":"","sources":["../../src/encoders/HTPirLiteCommands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAe,MAAM,YAAY,CAAA;AAEzD,OAAO,EAAE,qBAAqB,EAAyC,MAAM,kBAAkB,CAAA;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAKxC,qBAAa,iBAAkB,SAAQ,eAAe;IACpD,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,qBAAqB,CAAC,uBAAuB;IAqB/E,MAAM,CAAC,iBAAiB;IAGxB,MAAM,CAAC,uBAAuB,CAAC,MAAM,EAAE,qBAAqB,CAAC,6BAA6B;IAsB1F,MAAM,CAAC,uBAAuB;IAI9B,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,qBAAqB,CAAC,yBAAyB;IA0BlF,MAAM,CAAC,mBAAmB;IAI1B,MAAM,CAAC,aAAa;CAGpB"}
@@ -9,37 +9,92 @@ const zod_1 = require("zod");
9
9
  const utils_2 = require("../utils");
10
10
  const utils_3 = require("../utils");
11
11
  class HTPirLiteCommands extends encoders_1.GeneralCommands {
12
- static setUplinkSendingOnButtonPress(params) {
12
+ static setPIRSensorState(params) {
13
13
  try {
14
- types_1.DeviceCommandSchemas.HTPirLiteCommandSchemas.setUplinkSendingOnButtonPress.parse(params);
15
- const { value } = params;
16
- return new encoders_2.BaseCommand('SetUplinkSendingOnButtonPress', 0x2e, (0, utils_3.decToHex)(value));
14
+ types_1.DeviceCommandSchemas.HTPirLiteCommandSchemas.setPIRSensorState.parse(params);
15
+ const { state } = params;
16
+ return new encoders_2.BaseCommand('SetPIRSensorState', 0x36, (0, utils_3.decToHex)(state));
17
17
  }
18
18
  catch (e) {
19
19
  if (e instanceof zod_1.ZodError) {
20
20
  throw new utils_2.CustomError({
21
- message: 'Zod validation error during SetUplinkSendingOnButtonPress execution',
22
- command: 'SetUplinkSendingOnButtonPress',
21
+ message: 'Zod validation error during SetPIRSensorState execution',
22
+ command: 'SetPIRSensorState',
23
23
  originalError: e,
24
24
  });
25
25
  }
26
26
  else {
27
27
  throw new utils_2.CustomError({
28
- message: 'Error during SetUplinkSendingOnButtonPress execution',
29
- command: 'SetUplinkSendingOnButtonPress',
28
+ message: 'Error during SetPIRSensorState execution',
29
+ command: 'SetPIRSensorState',
30
30
  originalError: e,
31
31
  });
32
32
  }
33
33
  }
34
34
  }
35
- static getUplinkSendingOnButtonPress() {
36
- return new encoders_2.BaseCommand('GetUplinkSendingOnButtonPress', 0x2f);
35
+ static getPIRSensorState() {
36
+ return new encoders_2.BaseCommand('GetPIRSensorState', 0x37);
37
+ }
38
+ static setPIRSensorSensitivity(params) {
39
+ try {
40
+ types_1.DeviceCommandSchemas.HTPirLiteCommandSchemas.setPIRSensorSensitivity.parse(params);
41
+ const { sensitivity } = params;
42
+ return new encoders_2.BaseCommand('SetPIRSensorSensitivity', 0x3e, (0, utils_3.decToHex)(sensitivity));
43
+ }
44
+ catch (e) {
45
+ if (e instanceof zod_1.ZodError) {
46
+ throw new utils_2.CustomError({
47
+ message: 'Zod validation error during SetPIRSensorSensitivity execution',
48
+ command: 'SetPIRSensorSensitivity',
49
+ originalError: e,
50
+ });
51
+ }
52
+ else {
53
+ throw new utils_2.CustomError({
54
+ message: 'Error during SetPIRSensorSensitivity execution',
55
+ command: 'SetPIRSensorSensitivity',
56
+ originalError: e,
57
+ });
58
+ }
59
+ }
60
+ }
61
+ static getPIRSensorSensitivity() {
62
+ return new encoders_2.BaseCommand('GetPIRSensorSensitivity', 0x3f);
63
+ }
64
+ static setOccupancyTimeout(params) {
65
+ try {
66
+ types_1.DeviceCommandSchemas.HTPirLiteCommandSchemas.setOccupancyTimeout.parse(params);
67
+ const { timeout } = params;
68
+ // Convert timeout to two bytes (high byte and low byte)
69
+ const highByte = (timeout >> 8) & 0xFF;
70
+ const lowByte = timeout & 0xFF;
71
+ return new encoders_2.BaseCommand('SetOccupancyTimeout', 0x38, (0, utils_3.decToHex)(highByte) + (0, utils_3.decToHex)(lowByte));
72
+ }
73
+ catch (e) {
74
+ if (e instanceof zod_1.ZodError) {
75
+ throw new utils_2.CustomError({
76
+ message: 'Zod validation error during SetOccupancyTimeout execution',
77
+ command: 'SetOccupancyTimeout',
78
+ originalError: e,
79
+ });
80
+ }
81
+ else {
82
+ throw new utils_2.CustomError({
83
+ message: 'Error during SetOccupancyTimeout execution',
84
+ command: 'SetOccupancyTimeout',
85
+ originalError: e,
86
+ });
87
+ }
88
+ }
89
+ }
90
+ static getOccupancyTimeout() {
91
+ return new encoders_2.BaseCommand('GetOccupancyTimeout', 0x39);
37
92
  }
38
93
  static restartDevice() {
39
94
  return new encoders_2.BaseCommand('RestartDevice', 0xa5);
40
95
  }
41
96
  }
42
97
  exports.HTPirLiteCommands = HTPirLiteCommands;
43
- (0, utils_1.applyMixins)(HTPirLiteCommands, [encoders_1.GeneralCommands, encoders_1.PIRCommands]);
44
- (0, utils_1.delMethods)(HTPirLiteCommands, ['setPIRInitPeriod', 'getPIRInitPeriod']);
98
+ (0, utils_1.applyMixins)(HTPirLiteCommands, [encoders_1.GeneralCommands]);
99
+ (0, utils_1.delMethods)(HTPirLiteCommands, []);
45
100
  //# sourceMappingURL=HTPirLiteCommands.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HTPirLiteCommands.js","sourceRoot":"","sources":["../../src/encoders/HTPirLiteCommands.ts"],"names":[],"mappings":";;;AAAA,yCAAyD;AACzD,mCAAiD;AACjD,4CAA8E;AAC9E,yCAAwC;AACxC,6BAA8B;AAC9B,mCAAqC;AACrC,mCAAkC;AAElC,MAAa,iBAAkB,SAAQ,0BAAe;IACrD,MAAM,CAAC,6BAA6B,CAAC,MAAiE;QACrG,IAAI,CAAC;YACJ,4BAAoB,CAAC,uBAAuB,CAAC,6BAA6B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACxF,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;YACxB,OAAO,IAAI,sBAAW,CAAC,+BAA+B,EAAE,IAAI,EAAE,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,CAAA;QAC/E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,cAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,qEAAqE;oBAC9E,OAAO,EAAE,+BAA+B;oBACxC,aAAa,EAAE,CAAC;iBAChB,CAAC,CAAA;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,sDAAsD;oBAC/D,OAAO,EAAE,+BAA+B;oBACxC,aAAa,EAAE,CAAU;iBACzB,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,MAAM,CAAC,6BAA6B;QACnC,OAAO,IAAI,sBAAW,CAAC,+BAA+B,EAAE,IAAI,CAAC,CAAA;IAC9D,CAAC;IAED,MAAM,CAAC,aAAa;QACnB,OAAO,IAAI,sBAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;IAC9C,CAAC;CACD;AA9BD,8CA8BC;AAED,IAAA,mBAAW,EAAC,iBAAiB,EAAE,CAAC,0BAAe,EAAE,sBAAW,CAAC,CAAC,CAAA;AAE9D,IAAA,kBAAU,EAAC,iBAAiB,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"HTPirLiteCommands.js","sourceRoot":"","sources":["../../src/encoders/HTPirLiteCommands.ts"],"names":[],"mappings":";;;AAAA,yCAAyD;AACzD,mCAAiD;AACjD,4CAA+F;AAC/F,yCAAwC;AACxC,6BAA8B;AAC9B,mCAAqC;AACrC,mCAAkC;AAElC,MAAa,iBAAkB,SAAQ,0BAAe;IACpD,MAAM,CAAC,iBAAiB,CAAC,MAAqD;QAC9E,IAAI,CAAC;YACJ,4BAAoB,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAC5E,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;YACxB,OAAO,IAAI,sBAAW,CAAC,mBAAmB,EAAE,IAAI,EAAE,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,CAAA;QACnE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,cAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,yDAAyD;oBAClE,OAAO,EAAE,mBAAmB;oBAC5B,aAAa,EAAE,CAAC;iBAChB,CAAC,CAAA;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,0CAA0C;oBACnD,OAAO,EAAE,mBAAmB;oBAC5B,aAAa,EAAE,CAAU;iBACzB,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IACD,MAAM,CAAC,iBAAiB;QACvB,OAAO,IAAI,sBAAW,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAA;IAClD,CAAC;IACD,MAAM,CAAC,uBAAuB,CAAC,MAA2D;QACzF,IAAI,CAAC;YACJ,4BAAoB,CAAC,uBAAuB,CAAC,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAClF,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAA;YAC9B,OAAO,IAAI,sBAAW,CAAC,yBAAyB,EAAE,IAAI,EAAE,IAAA,gBAAQ,EAAC,WAAW,CAAC,CAAC,CAAA;QAC/E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,cAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,+DAA+D;oBACxE,OAAO,EAAE,yBAAyB;oBAClC,aAAa,EAAE,CAAC;iBAChB,CAAC,CAAA;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,gDAAgD;oBACzD,OAAO,EAAE,yBAAyB;oBAClC,aAAa,EAAE,CAAU;iBACzB,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC7B,OAAO,IAAI,sBAAW,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAC,MAAuD;QACjF,IAAI,CAAC;YACJ,4BAAoB,CAAC,uBAAuB,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAC9E,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;YAC1B,wDAAwD;YACxD,MAAM,QAAQ,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,IAAI,CAAA;YACtC,MAAM,OAAO,GAAG,OAAO,GAAG,IAAI,CAAA;YAE9B,OAAO,IAAI,sBAAW,CAAC,qBAAqB,EAAE,IAAI,EAAE,IAAA,gBAAQ,EAAC,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,OAAO,CAAC,CAAC,CAAA;QAC5F,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,cAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,2DAA2D;oBACpE,OAAO,EAAE,qBAAqB;oBAC9B,aAAa,EAAE,CAAC;iBAChB,CAAC,CAAA;YACH,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,mBAAW,CAAC;oBACrB,OAAO,EAAE,4CAA4C;oBACrD,OAAO,EAAE,qBAAqB;oBAC9B,aAAa,EAAE,CAAU;iBACzB,CAAC,CAAA;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAED,MAAM,CAAC,mBAAmB;QACzB,OAAO,IAAI,sBAAW,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAA;IACpD,CAAC;IAED,MAAM,CAAC,aAAa;QACnB,OAAO,IAAI,sBAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;IAC9C,CAAC;CACD;AApFD,8CAoFC;AAED,IAAA,mBAAW,EAAC,iBAAiB,EAAE,CAAC,0BAAe,CAAC,CAAC,CAAA;AAEjD,IAAA,kBAAU,EAAC,iBAAiB,EAAE,EAAE,CAAC,CAAA"}