homebridge-easy-mqtt 1.4.1-beta.1 → 1.5.0-beta.1

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 (137) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/README.md +86 -5
  3. package/config.schema.json +76 -1
  4. package/dist/accessory/abstract/base.d.ts +2 -2
  5. package/dist/accessory/abstract/base.js +5 -25
  6. package/dist/accessory/abstract/base.js.map +1 -1
  7. package/dist/accessory/abstract/common.d.ts +17 -6
  8. package/dist/accessory/abstract/common.js +136 -28
  9. package/dist/accessory/abstract/common.js.map +1 -1
  10. package/dist/accessory/abstract/mqtt.d.ts +2 -0
  11. package/dist/accessory/abstract/mqtt.js +13 -12
  12. package/dist/accessory/abstract/mqtt.js.map +1 -1
  13. package/dist/accessory/addons/filter.d.ts +0 -1
  14. package/dist/accessory/addons/filter.js +1 -13
  15. package/dist/accessory/addons/filter.js.map +1 -1
  16. package/dist/accessory/characteristic/characteristic.d.ts +3 -0
  17. package/dist/accessory/characteristic/characteristic.js +23 -0
  18. package/dist/accessory/characteristic/characteristic.js.map +1 -0
  19. package/dist/accessory/characteristic/custom.d.ts +1 -0
  20. package/dist/accessory/characteristic/custom.js +3 -0
  21. package/dist/accessory/characteristic/custom.js.map +1 -1
  22. package/dist/accessory/characteristic/eve.d.ts +6 -0
  23. package/dist/accessory/characteristic/eve.js +24 -0
  24. package/dist/accessory/characteristic/eve.js.map +1 -0
  25. package/dist/accessory/climate/active.d.ts +0 -4
  26. package/dist/accessory/climate/active.js +4 -36
  27. package/dist/accessory/climate/active.js.map +1 -1
  28. package/dist/accessory/climate/fan2.d.ts +1 -12
  29. package/dist/accessory/climate/fan2.js +22 -101
  30. package/dist/accessory/climate/fan2.js.map +1 -1
  31. package/dist/accessory/climate/heaterCooler.d.ts +1 -11
  32. package/dist/accessory/climate/heaterCooler.js +24 -100
  33. package/dist/accessory/climate/heaterCooler.js.map +1 -1
  34. package/dist/accessory/climate/purifier.d.ts +1 -11
  35. package/dist/accessory/climate/purifier.js +20 -90
  36. package/dist/accessory/climate/purifier.js.map +1 -1
  37. package/dist/accessory/climate/temperatureControl.d.ts +2 -1
  38. package/dist/accessory/climate/temperatureControl.js +3 -3
  39. package/dist/accessory/climate/temperatureControl.js.map +1 -1
  40. package/dist/accessory/climate/thermostat.d.ts +1 -9
  41. package/dist/accessory/climate/thermostat.js +24 -77
  42. package/dist/accessory/climate/thermostat.js.map +1 -1
  43. package/dist/accessory/garage.d.ts +1 -9
  44. package/dist/accessory/garage.js +19 -85
  45. package/dist/accessory/garage.js.map +1 -1
  46. package/dist/accessory/lock.d.ts +1 -5
  47. package/dist/accessory/lock.js +23 -57
  48. package/dist/accessory/lock.js.map +1 -1
  49. package/dist/accessory/onoff/lightbulb.d.ts +1 -2
  50. package/dist/accessory/onoff/lightbulb.js +7 -13
  51. package/dist/accessory/onoff/lightbulb.js.map +1 -1
  52. package/dist/accessory/onoff/onoff.d.ts +2 -4
  53. package/dist/accessory/onoff/onoff.js +28 -32
  54. package/dist/accessory/onoff/onoff.js.map +1 -1
  55. package/dist/accessory/onoff/outlet.d.ts +1 -1
  56. package/dist/accessory/onoff/outlet.js +3 -3
  57. package/dist/accessory/onoff/outlet.js.map +1 -1
  58. package/dist/accessory/onoff/switch.d.ts +1 -2
  59. package/dist/accessory/onoff/switch.js +0 -3
  60. package/dist/accessory/onoff/switch.js.map +1 -1
  61. package/dist/accessory/position/blind.d.ts +1 -2
  62. package/dist/accessory/position/blind.js +5 -11
  63. package/dist/accessory/position/blind.js.map +1 -1
  64. package/dist/accessory/position/position.d.ts +0 -7
  65. package/dist/accessory/position/position.js +11 -62
  66. package/dist/accessory/position/position.js.map +1 -1
  67. package/dist/accessory/security.d.ts +3 -7
  68. package/dist/accessory/security.js +37 -69
  69. package/dist/accessory/security.js.map +1 -1
  70. package/dist/accessory/sensor/air.d.ts +1 -5
  71. package/dist/accessory/sensor/air.js +14 -46
  72. package/dist/accessory/sensor/air.js.map +1 -1
  73. package/dist/accessory/sensor/carbonDioxide.d.ts +1 -1
  74. package/dist/accessory/sensor/carbonDioxide.js +3 -3
  75. package/dist/accessory/sensor/carbonDioxide.js.map +1 -1
  76. package/dist/accessory/sensor/carbonMonoxide.d.ts +1 -1
  77. package/dist/accessory/sensor/carbonMonoxide.js +3 -3
  78. package/dist/accessory/sensor/carbonMonoxide.js.map +1 -1
  79. package/dist/accessory/sensor/contact.d.ts +1 -1
  80. package/dist/accessory/sensor/contact.js +18 -5
  81. package/dist/accessory/sensor/contact.js.map +1 -1
  82. package/dist/accessory/sensor/humidity.d.ts +1 -1
  83. package/dist/accessory/sensor/humidity.js +7 -4
  84. package/dist/accessory/sensor/humidity.js.map +1 -1
  85. package/dist/accessory/sensor/leak.d.ts +1 -1
  86. package/dist/accessory/sensor/leak.js +3 -3
  87. package/dist/accessory/sensor/leak.js.map +1 -1
  88. package/dist/accessory/sensor/light.d.ts +1 -1
  89. package/dist/accessory/sensor/light.js +3 -3
  90. package/dist/accessory/sensor/light.js.map +1 -1
  91. package/dist/accessory/sensor/motion.d.ts +1 -1
  92. package/dist/accessory/sensor/motion.js +7 -4
  93. package/dist/accessory/sensor/motion.js.map +1 -1
  94. package/dist/accessory/sensor/occupancy.d.ts +1 -1
  95. package/dist/accessory/sensor/occupancy.js +3 -3
  96. package/dist/accessory/sensor/occupancy.js.map +1 -1
  97. package/dist/accessory/sensor/sensor.d.ts +0 -2
  98. package/dist/accessory/sensor/sensor.js +2 -26
  99. package/dist/accessory/sensor/sensor.js.map +1 -1
  100. package/dist/accessory/sensor/smoke.d.ts +1 -1
  101. package/dist/accessory/sensor/smoke.js +3 -3
  102. package/dist/accessory/sensor/smoke.js.map +1 -1
  103. package/dist/accessory/sensor/temperature.d.ts +1 -1
  104. package/dist/accessory/sensor/temperature.js +7 -4
  105. package/dist/accessory/sensor/temperature.js.map +1 -1
  106. package/dist/accessory/valve.d.ts +1 -5
  107. package/dist/accessory/valve.js +7 -41
  108. package/dist/accessory/valve.js.map +1 -1
  109. package/dist/homebridge/platform.js +8 -4
  110. package/dist/homebridge/platform.js.map +1 -1
  111. package/dist/homebridge-ui/public/index.html +1 -1
  112. package/dist/homebridge-ui/public/ui.js +1 -1
  113. package/dist/i18n/en.d.ts +19 -5
  114. package/dist/i18n/en.js +20 -6
  115. package/dist/i18n/en.js.map +1 -1
  116. package/dist/i18n/fr.d.ts +19 -5
  117. package/dist/i18n/i18n.d.ts +19 -5
  118. package/dist/i18n/it.d.ts +19 -5
  119. package/dist/i18n/ro.d.ts +19 -5
  120. package/dist/i18n/template.d.ts +19 -5
  121. package/dist/i18n/vi.d.ts +19 -5
  122. package/dist/model/enums.d.ts +12 -1
  123. package/dist/model/enums.js +12 -0
  124. package/dist/model/enums.js.map +1 -1
  125. package/dist/model/history.d.ts +32 -0
  126. package/dist/model/history.js +128 -0
  127. package/dist/model/history.js.map +1 -0
  128. package/dist/model/mqtt.d.ts +1 -0
  129. package/dist/model/mqtt.js +37 -11
  130. package/dist/model/mqtt.js.map +1 -1
  131. package/dist/model/types.d.ts +15 -3
  132. package/lib/fakegato-history/fakegato-history.js +887 -0
  133. package/lib/fakegato-history/fakegato-storage.js +178 -0
  134. package/lib/fakegato-history/fakegato-timer.js +133 -0
  135. package/lib/fakegato-history/lib/uuid.js +25 -0
  136. package/lib/fakegato-history/package.json +5 -0
  137. package/package.json +2 -1
@@ -4,47 +4,15 @@ import { HKCharacteristicKey } from '../../model/enums.js';
4
4
  export class ActiveClimateAccessory extends TemperatureControlAccessory {
5
5
  constructor(dependency) {
6
6
  super(dependency);
7
- this.setup(HKCharacteristicKey.Active, dependency.Characteristic.Active.INACTIVE, 'topicGetActive', this.bindOnUpdateNumericBoolean(HKCharacteristicKey.Active, 'valueStateActive', strings.active.active, strings.active.notActive), true, 'topicSetActive', this.onSetActive.bind(this));
8
- this.setup(HKCharacteristicKey.LockPhysicalControls, dependency.Characteristic.LockPhysicalControls.CONTROL_LOCK_DISABLED, 'topicGetLockPhysicalControls', this.bindOnUpdateNumericBoolean(HKCharacteristicKey.LockPhysicalControls, 'valueControlLock', strings.active.controlsLocked, strings.active.controlsUnLocked), false, 'topicSetLockPhysicalControls', this.onSetLockControls.bind(this));
7
+ this.setup(HKCharacteristicKey.Active, dependency.Characteristic.Active.INACTIVE, 'topicGetActive', this.bindOnUpdateNumericBoolean(HKCharacteristicKey.Active, 'valueStateActive', strings.active.active, strings.active.notActive), true, 'topicSetActive', this.bindOnSetBoolean(HKCharacteristicKey.Active, 'topicSetActive', 'valueStateActive', 'valueStateInactive', dependency.Characteristic.Active.ACTIVE, strings.active.activeSet, strings.active.inactiveSet));
8
+ this.setup(HKCharacteristicKey.LockPhysicalControls, dependency.Characteristic.LockPhysicalControls.CONTROL_LOCK_DISABLED, 'topicGetLockPhysicalControls', this.bindOnUpdateNumericBoolean(HKCharacteristicKey.LockPhysicalControls, 'valueControlLock', strings.active.controlsLocked, strings.active.controlsUnLocked), false, 'topicSetLockPhysicalControls', this.bindOnSetBoolean(HKCharacteristicKey.LockPhysicalControls, 'topicSetLockPhysicalControls', 'valueControlLock', 'valueControlUnlock', dependency.Characteristic.LockPhysicalControls.CONTROL_LOCK_ENABLED, strings.active.controlsLockFuture, strings.active.controlsUnlockFuture));
9
9
  let rotationLogString = strings.active.rotationValueUpdate;
10
10
  if (!dependency.config.maximumRotationSpeed || !this.assertType('number', 'maximumRotationSpeed')) {
11
11
  dependency.config.maximumRotationSpeed = 100;
12
12
  rotationLogString = strings.active.rotationPercentUpdate;
13
13
  }
14
- this.setup(HKCharacteristicKey.RotationSpeed, 0, 'topicGetRotationSpeed', this.bindOnUpdateNumeric(HKCharacteristicKey.RotationSpeed, rotationLogString), false, 'topicSetRotationSpeed', this.onSetRotationSpeed.bind(this))?.setProps({ maxValue: dependency.config.maximumRotationSpeed });
15
- this.setup(HKCharacteristicKey.SwingMode, dependency.Characteristic.SwingMode.SWING_DISABLED, 'topicGetSwingMode', this.bindOnUpdateNumericBoolean(HKCharacteristicKey.SwingMode, 'valueSwingEnabled', strings.active.swingEnabled, strings.active.swingDisabled), false, 'topicSetSwingMode', this.onSetSwingMode.bind(this));
16
- }
17
- async onSetActive(value) {
18
- if (!this.assert('valueStateActive', 'valueStateInactive')) {
19
- return;
20
- }
21
- const active = value === this.Characteristic.Active.ACTIVE;
22
- const logString = active ? strings.active.activeSet : strings.active.inactiveSet;
23
- const publish = active ? this.config.valueStateActive : this.config.valueStateInactive;
24
- this.onSet(HKCharacteristicKey.Active, value, publish, 'topicSetActive', logString);
25
- }
26
- async onSetLockControls(value) {
27
- if (!this.assert('valueControlLock', 'valueControlUnlock')) {
28
- return;
29
- }
30
- const lock = value === this.Characteristic.LockPhysicalControls.CONTROL_LOCK_ENABLED;
31
- const logString = lock ? strings.active.controlsLockFuture : strings.active.controlsUnlockFuture;
32
- const publish = lock ? this.config.valueControlLock : this.config.valueControlUnlock;
33
- this.onSet(HKCharacteristicKey.LockPhysicalControls, value, publish, 'topicSetLockPhysicalControls', logString);
34
- }
35
- async onSetRotationSpeed(value) {
36
- const isPercent = this.config.maximumRotationSpeed === undefined || this.config.maximumRotationSpeed === 100;
37
- const logString = (isPercent ? strings.active.rotationPercentSet : strings.active.rotationValueSet).replace('%d', value.toString());
38
- this.onSet(HKCharacteristicKey.RotationSpeed, value, value, 'topicSetRotationSpeed', logString);
39
- }
40
- async onSetSwingMode(value) {
41
- if (!this.assert('valueSwingEnabled', 'valueSwingDisabled')) {
42
- return;
43
- }
44
- const swing = value === this.Characteristic.SwingMode.SWING_ENABLED;
45
- const logString = swing ? strings.active.swingEnabledFuture : strings.active.swingDisabledFuture;
46
- const publish = swing ? this.config.valueSwingEnabled : this.config.valueSwingDisabled;
47
- this.onSet(HKCharacteristicKey.SwingMode, value, publish, 'topicSetSwingMode', logString);
14
+ this.setup(HKCharacteristicKey.RotationSpeed, 0, 'topicGetRotationSpeed', this.bindOnUpdateNumeric(HKCharacteristicKey.RotationSpeed, rotationLogString), false, 'topicSetRotationSpeed', this.bindOnSetPercentOrValue(HKCharacteristicKey.RotationSpeed, 'topicSetRotationSpeed', dependency.config.maximumRotationSpeed, strings.active.rotationPercentSet, strings.active.rotationValueSet))?.setProps({ maxValue: dependency.config.maximumRotationSpeed });
15
+ this.setup(HKCharacteristicKey.SwingMode, dependency.Characteristic.SwingMode.SWING_DISABLED, 'topicGetSwingMode', this.bindOnUpdateNumericBoolean(HKCharacteristicKey.SwingMode, 'valueSwingEnabled', strings.active.swingEnabled, strings.active.swingDisabled), false, 'topicSetSwingMode', this.bindOnSetBoolean(HKCharacteristicKey.SwingMode, 'topicSetSwingMode', 'valueSwingEnabled', 'valueSwingDisabled', dependency.Characteristic.SwingMode.SWING_ENABLED, strings.active.swingEnabledFuture, strings.active.swingDisabledFuture));
48
16
  }
49
17
  }
50
18
  //# sourceMappingURL=active.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"active.js","sourceRoot":"","sources":["../../../src/accessory/climate/active.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"active.js","sourceRoot":"","sources":["../../../src/accessory/climate/active.ts"],"names":[],"mappings":"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"}
@@ -2,17 +2,6 @@ import { ActiveClimateAccessory } from './active.js';
2
2
  import { AccessoryType } from '../../model/enums.js';
3
3
  import { FanV2Config, MQTTAccessoryDependency } from '../../model/types.js';
4
4
  export declare class FanV2Accessory extends ActiveClimateAccessory<FanV2Config> {
5
- private readonly CURRENT_STATE_MAP;
6
- private readonly TARGET_STATE_MAP;
7
- constructor(dependency: MQTTAccessoryDependency<FanV2Config>);
8
5
  protected getAccessoryType(): AccessoryType;
9
- private onCurrentStateUpdate;
10
- private onTargetStateUpdate;
11
- private onSetTargetState;
12
- private onSetDirection;
13
- private fromCVState;
14
- private toCurrentCVState;
15
- private toTargetCVState;
16
- private stateStringForCurrentCV;
17
- private stateStringForTargetCV;
6
+ constructor(dependency: MQTTAccessoryDependency<FanV2Config>);
18
7
  }
@@ -2,121 +2,42 @@ import { ActiveClimateAccessory } from './active.js';
2
2
  import { strings } from '../../i18n/i18n.js';
3
3
  import { AccessoryType, HKCharacteristicKey } from '../../model/enums.js';
4
4
  export class FanV2Accessory extends ActiveClimateAccessory {
5
- CURRENT_STATE_MAP;
6
- TARGET_STATE_MAP;
5
+ getAccessoryType() {
6
+ return AccessoryType.Fanv2;
7
+ }
7
8
  constructor(dependency) {
8
9
  super(dependency);
9
- this.CURRENT_STATE_MAP = new Map([
10
+ const currentStates = new Map([
10
11
  ['valueModeInactive', dependency.Characteristic.CurrentFanState.INACTIVE],
11
12
  ['valueModeIdle', dependency.Characteristic.CurrentFanState.IDLE],
12
13
  ['valueModeBlowing', dependency.Characteristic.CurrentFanState.BLOWING_AIR],
13
14
  ]);
14
- this.TARGET_STATE_MAP = new Map([
15
- ['valueModeManual', dependency.Characteristic.TargetFanState.MANUAL],
16
- ['valueModeAuto', dependency.Characteristic.TargetFanState.AUTO],
17
- ]);
18
- const validCurrentStates = Array.from(this.CURRENT_STATE_MAP.keys()).filter((key) => this.getRawValue(key, false) !== undefined);
15
+ const validCurrentStates = Array.from(currentStates.keys()).filter((key) => this.getRawValue(key, false) !== undefined);
19
16
  if (dependency.config.topicGetCurrentFanState !== undefined && validCurrentStates.length === 0) {
20
17
  this.log.error(strings.fanv2.noCurrentStateValues, this.name);
21
18
  return;
22
19
  }
23
- this.setup(HKCharacteristicKey.CurrentFanState, this.CURRENT_STATE_MAP.get(validCurrentStates[0]), 'topicGetCurrentFanState', this.onCurrentStateUpdate.bind(this), false)
24
- ?.setProps({ validValues: validCurrentStates.map((key) => this.CURRENT_STATE_MAP.get(key)) });
25
- const validTargetStates = Array.from(this.TARGET_STATE_MAP.keys()).filter((key) => this.getRawValue(key, false) !== undefined);
20
+ const currentStrings = new Map([
21
+ [dependency.Characteristic.CurrentFanState.INACTIVE, strings.fanv2.stateInactive],
22
+ [dependency.Characteristic.CurrentFanState.IDLE, strings.fanv2.stateIdle],
23
+ [dependency.Characteristic.CurrentFanState.BLOWING_AIR, strings.fanv2.stateBlowing],
24
+ ]);
25
+ this.setup(HKCharacteristicKey.CurrentFanState, currentStates.get(validCurrentStates[0]), 'topicGetCurrentFanState', this.bindOnUpdateState(HKCharacteristicKey.CurrentFanState, currentStates, currentStrings, strings.fanv2.stateUnknown), false)?.setProps({ validValues: validCurrentStates.map((key) => currentStates.get(key)) });
26
+ const targetStates = new Map([
27
+ ['valueModeManual', dependency.Characteristic.TargetFanState.MANUAL],
28
+ ['valueModeAuto', dependency.Characteristic.TargetFanState.AUTO],
29
+ ]);
30
+ const validTargetStates = Array.from(targetStates.keys()).filter((key) => this.getRawValue(key, false) !== undefined);
26
31
  if (dependency.config.topicGetTargetFanState !== undefined && validTargetStates.length === 0) {
27
32
  this.log.error(strings.fanv2.noTargetStateValues, this.name);
28
33
  return;
29
34
  }
30
- this.setup(HKCharacteristicKey.TargetFanState, this.TARGET_STATE_MAP.get(validTargetStates[0]), 'topicGetTargetFanState', this.onTargetStateUpdate.bind(this), false, 'topicSetTargetFanState', this.onSetTargetState.bind(this))
31
- ?.setProps({ validValues: validTargetStates.map((key) => this.TARGET_STATE_MAP.get(key)) });
32
- this.setup(HKCharacteristicKey.RotationDirection, dependency.Characteristic.RotationDirection.CLOCKWISE, 'topicGetRotationDirection', this.bindOnUpdateNumericBoolean(HKCharacteristicKey.RotationDirection, 'valueDirectionCounterClockwise', strings.fanv2.clockwise, strings.fanv2.counterClockwise), false, 'topicSetRotationDirection', this.onSetDirection.bind(this));
33
- }
34
- getAccessoryType() {
35
- return AccessoryType.Fanv2;
36
- }
37
- async onCurrentStateUpdate(_topic, value) {
38
- const state = this.toCurrentCVState(value);
39
- if (state === undefined) {
40
- return;
41
- }
42
- this.onUpdate(HKCharacteristicKey.CurrentFanState, state, this.stateStringForCurrentCV(state));
43
- }
44
- async onTargetStateUpdate(_topic, value) {
45
- const state = this.toTargetCVState(value);
46
- if (state === undefined) {
47
- return;
48
- }
49
- this.onUpdate(HKCharacteristicKey.TargetFanState, state, this.stateStringForTargetCV(state));
50
- }
51
- async onSetTargetState(value) {
52
- const target = this.fromCVState(value);
53
- if (target === undefined) {
54
- return;
55
- }
56
- this.onSet(HKCharacteristicKey.TargetFanState, value, target, 'topicSetTargetFanState', this.stateStringForTargetCV(value));
57
- }
58
- async onSetDirection(value) {
59
- if (!this.assert('valueDirectionClockwise', 'valueDirectionCounterClockwise')) {
60
- return;
61
- }
62
- const clockwise = value === this.Characteristic.RotationDirection.CLOCKWISE;
63
- const logString = clockwise ? strings.fanv2.setDirectionClockwise : strings.fanv2.setDirectionCounterClockwise;
64
- const publish = clockwise ? this.config.valueDirectionClockwise : this.config.valueDirectionCounterClockwise;
65
- this.onSet(HKCharacteristicKey.RotationDirection, value, publish, 'topicSetRotationDirection', logString);
66
- }
67
- fromCVState(value) {
68
- let primative = undefined;
69
- this.TARGET_STATE_MAP.forEach((test, key) => {
70
- if (value === test) {
71
- primative = this.getPrimitiveValue(key);
72
- }
73
- });
74
- if (primative === undefined) {
75
- this.log.error(strings.fanv2.badValue, this.name, `'${value}'`);
76
- }
77
- return primative;
78
- }
79
- toCurrentCVState(value) {
80
- switch (value) {
81
- case this.getPrimitiveValue('valueModeInactive', false):
82
- return this.CURRENT_STATE_MAP.get('valueModeInactive');
83
- case this.getPrimitiveValue('valueModeIdle', false):
84
- return this.CURRENT_STATE_MAP.get('valueModeIdle');
85
- case this.getPrimitiveValue('valueModeBlowing', false):
86
- return this.CURRENT_STATE_MAP.get('valueModeBlowing');
87
- }
88
- this.logIfDesired(strings.fanv2.unknownValue, `'${value}'`);
89
- }
90
- toTargetCVState(value) {
91
- switch (value) {
92
- case this.getPrimitiveValue('valueModeAuto', false):
93
- return this.TARGET_STATE_MAP.get('valueModeAuto');
94
- case this.getPrimitiveValue('valueModeManual', false):
95
- return this.TARGET_STATE_MAP.get('valueModeManual');
96
- }
97
- this.logIfDesired(strings.fanv2.unknownValue, `'${value}'`);
98
- }
99
- stateStringForCurrentCV(state) {
100
- switch (state) {
101
- case this.Characteristic.CurrentFanState.INACTIVE:
102
- return strings.fanv2.stateInactive;
103
- case this.Characteristic.CurrentFanState.IDLE:
104
- return strings.fanv2.stateIdle;
105
- case this.Characteristic.CurrentFanState.BLOWING_AIR:
106
- return strings.fanv2.stateBlowing;
107
- default:
108
- return strings.fanv2.stateUnknown;
109
- }
110
- }
111
- stateStringForTargetCV(state) {
112
- switch (state) {
113
- case this.Characteristic.TargetFanState.AUTO:
114
- return strings.fanv2.stateAuto;
115
- case this.Characteristic.TargetFanState.MANUAL:
116
- return strings.fanv2.stateManual;
117
- default:
118
- return strings.fanv2.stateUnknown;
119
- }
35
+ const targetStrings = new Map([
36
+ [dependency.Characteristic.TargetFanState.AUTO, strings.fanv2.stateAuto],
37
+ [dependency.Characteristic.TargetFanState.MANUAL, strings.fanv2.stateManual],
38
+ ]);
39
+ this.setup(HKCharacteristicKey.TargetFanState, targetStates.get(validTargetStates[0]), 'topicGetTargetFanState', this.bindOnUpdateState(HKCharacteristicKey.TargetFanState, targetStates, targetStrings, strings.fanv2.stateUnknown), false, 'topicSetTargetFanState', this.bindOnSetState(HKCharacteristicKey.TargetFanState, 'topicSetTargetFanState', targetStates, targetStrings, strings.fanv2.badValue))?.setProps({ validValues: validTargetStates.map((key) => targetStates.get(key)) });
40
+ this.setup(HKCharacteristicKey.RotationDirection, dependency.Characteristic.RotationDirection.CLOCKWISE, 'topicGetRotationDirection', this.bindOnUpdateNumericBoolean(HKCharacteristicKey.RotationDirection, 'valueDirectionClockwise', strings.fanv2.clockwise, strings.fanv2.counterClockwise), false, 'topicSetRotationDirection', this.bindOnSetBoolean(HKCharacteristicKey.RotationDirection, 'topicSetRotationDirection', 'valueDirectionClockwise', 'valueDirectionCounterClockwise', dependency.Characteristic.RotationDirection.CLOCKWISE, strings.fanv2.setDirectionClockwise, strings.fanv2.setDirectionCounterClockwise));
120
41
  }
121
42
  }
122
43
  //# sourceMappingURL=fan2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fan2.js","sourceRoot":"","sources":["../../../src/accessory/climate/fan2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fan2.js","sourceRoot":"","sources":["../../../src/accessory/climate/fan2.ts"],"names":[],"mappings":"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"}
@@ -2,16 +2,6 @@ import { ActiveClimateAccessory } from './active.js';
2
2
  import { AccessoryType } from '../../model/enums.js';
3
3
  import { HeaterCoolerConfig, MQTTAccessoryDependency } from '../../model/types.js';
4
4
  export declare class HeaterCoolerAccessory extends ActiveClimateAccessory<HeaterCoolerConfig> {
5
- private readonly CURRENT_STATE_MAP;
6
- private readonly TARGET_STATE_MAP;
7
- constructor(dependency: MQTTAccessoryDependency<HeaterCoolerConfig>);
8
5
  protected getAccessoryType(): AccessoryType;
9
- private onCurrentStateUpdate;
10
- private onTargetStateUpdate;
11
- private onSetTargetState;
12
- private fromCVState;
13
- private toCurrentCVState;
14
- private toTargetCVState;
15
- private stateStringForCurrentCV;
16
- private stateStringForTargetCV;
6
+ constructor(dependency: MQTTAccessoryDependency<HeaterCoolerConfig>);
17
7
  }
@@ -3,123 +3,47 @@ import { FilterMaintenance } from '../addons/filter.js';
3
3
  import { strings } from '../../i18n/i18n.js';
4
4
  import { AccessoryType, HKCharacteristicKey } from '../../model/enums.js';
5
5
  export class HeaterCoolerAccessory extends ActiveClimateAccessory {
6
- CURRENT_STATE_MAP;
7
- TARGET_STATE_MAP;
6
+ getAccessoryType() {
7
+ return AccessoryType.HeaterCooler;
8
+ }
8
9
  constructor(dependency) {
9
10
  super(dependency);
10
11
  this.setupTemperatureControlCharacteristics();
11
- this.CURRENT_STATE_MAP = new Map([
12
+ const currentStates = new Map([
12
13
  ['valueModeInactive', dependency.Characteristic.CurrentHeaterCoolerState.INACTIVE],
13
14
  ['valueModeIdle', dependency.Characteristic.CurrentHeaterCoolerState.IDLE],
14
15
  ['valueModeHeat', dependency.Characteristic.CurrentHeaterCoolerState.HEATING],
15
16
  ['valueModeCool', dependency.Characteristic.CurrentHeaterCoolerState.COOLING],
16
17
  ]);
17
- this.TARGET_STATE_MAP = new Map([
18
- ['valueModeAuto', dependency.Characteristic.TargetHeaterCoolerState.AUTO],
19
- ['valueModeHeat', dependency.Characteristic.TargetHeaterCoolerState.HEAT],
20
- ['valueModeCool', dependency.Characteristic.TargetHeaterCoolerState.COOL],
21
- ]);
22
- const validCurrentStates = Array.from(this.CURRENT_STATE_MAP.keys()).filter((key) => this.getRawValue(key, false) !== undefined);
18
+ const validCurrentStates = Array.from(currentStates.keys()).filter((key) => this.getRawValue(key, false) !== undefined);
23
19
  if (validCurrentStates.length === 0) {
24
20
  this.log.error(strings.heaterCooler.noStateValues, this.name);
25
21
  return;
26
22
  }
27
- this.setup(HKCharacteristicKey.CurrentHeaterCoolerState, this.CURRENT_STATE_MAP.get(validCurrentStates[0]), 'topicGetCurrentHeaterCoolerState', this.onCurrentStateUpdate.bind(this), true)
28
- ?.setProps({ validValues: validCurrentStates.map((key) => this.CURRENT_STATE_MAP.get(key)) });
29
- const validTargetStates = Array.from(this.TARGET_STATE_MAP.keys()).filter((key) => this.getRawValue(key, false) !== undefined);
23
+ const currentStrings = new Map([
24
+ [dependency.Characteristic.CurrentHeaterCoolerState.INACTIVE, strings.heaterCooler.stateInactive],
25
+ [dependency.Characteristic.CurrentHeaterCoolerState.IDLE, strings.heaterCooler.stateIdle],
26
+ [dependency.Characteristic.CurrentHeaterCoolerState.HEATING, strings.heaterCooler.stateHeating],
27
+ [dependency.Characteristic.CurrentHeaterCoolerState.COOLING, strings.heaterCooler.stateCooling],
28
+ ]);
29
+ this.setup(HKCharacteristicKey.CurrentHeaterCoolerState, currentStates.get(validCurrentStates[0]), 'topicGetCurrentHeaterCoolerState', this.bindOnUpdateState(HKCharacteristicKey.CurrentHeaterCoolerState, currentStates, currentStrings, strings.heaterCooler.unknownValue), true)?.setProps({ validValues: validCurrentStates.map((key) => currentStates.get(key)) });
30
+ const targetStates = new Map([
31
+ ['valueModeAuto', dependency.Characteristic.TargetHeaterCoolerState.AUTO],
32
+ ['valueModeHeat', dependency.Characteristic.TargetHeaterCoolerState.HEAT],
33
+ ['valueModeCool', dependency.Characteristic.TargetHeaterCoolerState.COOL],
34
+ ]);
35
+ const validTargetStates = Array.from(targetStates.keys()).filter((key) => this.getRawValue(key, false) !== undefined);
30
36
  if (validTargetStates.length === 0) {
31
37
  this.log.error(strings.heaterCooler.noStateValues, this.name);
32
38
  return;
33
39
  }
34
- this.setup(HKCharacteristicKey.TargetHeaterCoolerState, this.TARGET_STATE_MAP.get(validTargetStates[0]), 'topicGetTargetHeaterCoolerState', this.onTargetStateUpdate.bind(this), true, 'topicSetTargetHeaterCoolerState', this.onSetTargetState.bind(this))
35
- ?.setProps({ validValues: validTargetStates.map((key) => this.TARGET_STATE_MAP.get(key)) });
40
+ const targetStrings = new Map([
41
+ [dependency.Characteristic.TargetHeaterCoolerState.AUTO, strings.heaterCooler.stateAuto],
42
+ [dependency.Characteristic.TargetHeaterCoolerState.HEAT, strings.heaterCooler.stateHeat],
43
+ [dependency.Characteristic.TargetHeaterCoolerState.COOL, strings.heaterCooler.stateCool],
44
+ ]);
45
+ this.setup(HKCharacteristicKey.TargetHeaterCoolerState, targetStates.get(validTargetStates[0]), 'topicGetTargetHeaterCoolerState', this.bindOnUpdateState(HKCharacteristicKey.TargetHeaterCoolerState, targetStates, targetStrings, strings.heaterCooler.unknownValue), true, 'topicSetTargetHeaterCoolerState', this.bindOnSetState(HKCharacteristicKey.TargetHeaterCoolerState, 'topicSetTargetHeaterCoolerState', targetStates, targetStrings, strings.heaterCooler.badValue))?.setProps({ validValues: validTargetStates.map((key) => targetStates.get(key)) });
36
46
  this.addTopicHandlers(FilterMaintenance.topicHandlers(dependency.Service, this, dependency.config));
37
47
  }
38
- getAccessoryType() {
39
- return AccessoryType.HeaterCooler;
40
- }
41
- async onCurrentStateUpdate(_topic, value) {
42
- const state = this.toCurrentCVState(value);
43
- if (state === undefined) {
44
- return;
45
- }
46
- this.onUpdate(HKCharacteristicKey.CurrentHeaterCoolerState, state, this.stateStringForCurrentCV(state));
47
- }
48
- async onTargetStateUpdate(_topic, value) {
49
- const state = this.toTargetCVState(value);
50
- if (state === undefined) {
51
- return;
52
- }
53
- this.onUpdate(HKCharacteristicKey.TargetHeaterCoolerState, state, this.stateStringForTargetCV(state));
54
- }
55
- async onSetTargetState(value) {
56
- const target = this.fromCVState(value);
57
- if (target === undefined) {
58
- return;
59
- }
60
- this.onSet(HKCharacteristicKey.TargetHeaterCoolerState, value, target, 'topicSetTargetHeaterCoolerState', this.stateStringForTargetCV(value));
61
- }
62
- fromCVState(value) {
63
- let primative = undefined;
64
- this.TARGET_STATE_MAP.forEach((test, key) => {
65
- if (value === test) {
66
- primative = this.getPrimitiveValue(key);
67
- }
68
- });
69
- if (primative === undefined) {
70
- this.log.error(strings.heaterCooler.badValue, this.name, `'${value}'`);
71
- }
72
- return primative;
73
- }
74
- toCurrentCVState(value) {
75
- switch (value) {
76
- case this.getPrimitiveValue('valueModeInactive', false):
77
- return this.CURRENT_STATE_MAP.get('valueModeInactive');
78
- case this.getPrimitiveValue('valueModeIdle', false):
79
- return this.CURRENT_STATE_MAP.get('valueModeIdle');
80
- case this.getPrimitiveValue('valueModeHeat', false):
81
- return this.CURRENT_STATE_MAP.get('valueModeHeat');
82
- case this.getPrimitiveValue('valueModeCool', false):
83
- return this.CURRENT_STATE_MAP.get('valueModeCool');
84
- }
85
- this.logIfDesired(strings.heaterCooler.unknownValue, `'${value}'`);
86
- }
87
- toTargetCVState(value) {
88
- switch (value) {
89
- case this.getPrimitiveValue('valueModeAuto', false):
90
- return this.TARGET_STATE_MAP.get('valueModeAuto');
91
- case this.getPrimitiveValue('valueModeHeat', false):
92
- return this.TARGET_STATE_MAP.get('valueModeHeat');
93
- case this.getPrimitiveValue('valueModeCool', false):
94
- return this.TARGET_STATE_MAP.get('valueModeCool');
95
- }
96
- this.logIfDesired(strings.heaterCooler.unknownValue, `'${value}'`);
97
- }
98
- stateStringForCurrentCV(state) {
99
- switch (state) {
100
- case this.Characteristic.CurrentHeaterCoolerState.INACTIVE:
101
- return strings.heaterCooler.stateInactive;
102
- case this.Characteristic.CurrentHeaterCoolerState.IDLE:
103
- return strings.heaterCooler.stateIdle;
104
- case this.Characteristic.CurrentHeaterCoolerState.HEATING:
105
- return strings.heaterCooler.stateHeating;
106
- case this.Characteristic.CurrentHeaterCoolerState.COOLING:
107
- return strings.heaterCooler.stateCooling;
108
- default:
109
- return strings.heaterCooler.stateUnknown;
110
- }
111
- }
112
- stateStringForTargetCV(state) {
113
- switch (state) {
114
- case this.Characteristic.TargetHeaterCoolerState.AUTO:
115
- return strings.heaterCooler.stateAuto;
116
- case this.Characteristic.TargetHeaterCoolerState.HEAT:
117
- return strings.heaterCooler.stateHeat;
118
- case this.Characteristic.TargetHeaterCoolerState.COOL:
119
- return strings.heaterCooler.stateCool;
120
- default:
121
- return strings.heaterCooler.stateUnknown;
122
- }
123
- }
124
48
  }
125
49
  //# sourceMappingURL=heaterCooler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"heaterCooler.js","sourceRoot":"","sources":["../../../src/accessory/climate/heaterCooler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"heaterCooler.js","sourceRoot":"","sources":["../../../src/accessory/climate/heaterCooler.ts"],"names":[],"mappings":"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"}
@@ -2,16 +2,6 @@ import { ActiveClimateAccessory } from './active.js';
2
2
  import { AccessoryType } from '../../model/enums.js';
3
3
  import { MQTTAccessoryDependency, PurifierConfig } from '../../model/types.js';
4
4
  export declare class PurifierAccessory extends ActiveClimateAccessory<PurifierConfig> {
5
- private readonly CURRENT_STATE_MAP;
6
- private readonly TARGET_STATE_MAP;
7
- constructor(dependency: MQTTAccessoryDependency<PurifierConfig>);
8
5
  protected getAccessoryType(): AccessoryType;
9
- private onCurrentStateUpdate;
10
- private onTargetStateUpdate;
11
- private onSetTargetState;
12
- private fromCVState;
13
- private toCurrentCVState;
14
- private toTargetCVState;
15
- private stateStringForCurrentCV;
16
- private stateStringForTargetCV;
6
+ constructor(dependency: MQTTAccessoryDependency<PurifierConfig>);
17
7
  }