@pietrolubini/homebridge-ecoflow 1.5.0 → 1.6.0-alpha.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 (168) hide show
  1. package/README.md +65 -7
  2. package/config.schema.json +1 -1
  3. package/dist/accessories/batteries/delta2/delta2AccessoryBase.js +3 -2
  4. package/dist/accessories/batteries/delta2/delta2AccessoryBase.js.map +1 -1
  5. package/dist/accessories/batteries/delta2/interfaces/delta2HttpApiContracts.d.ts +2 -1
  6. package/dist/accessories/batteries/delta2/services/delta2OutletServiceBase.d.ts +2 -2
  7. package/dist/accessories/batteries/delta2/services/delta2OutletServiceBase.js +2 -2
  8. package/dist/accessories/batteries/delta2/services/outletAcService.d.ts +1 -1
  9. package/dist/accessories/batteries/delta2/services/outletAcService.js +1 -1
  10. package/dist/accessories/batteries/delta2/services/outletAcService.js.map +1 -1
  11. package/dist/accessories/batteries/delta2/services/outletCarService.d.ts +1 -1
  12. package/dist/accessories/batteries/delta2/services/outletCarService.js +3 -3
  13. package/dist/accessories/batteries/delta2/services/outletCarService.js.map +1 -1
  14. package/dist/accessories/batteries/delta2/services/outletUsbService.d.ts +1 -1
  15. package/dist/accessories/batteries/delta2/services/outletUsbService.js +3 -3
  16. package/dist/accessories/batteries/delta2/services/outletUsbService.js.map +1 -1
  17. package/dist/accessories/batteries/delta2/services/switchXboostService.d.ts +3 -3
  18. package/dist/accessories/batteries/delta2/services/switchXboostService.js +4 -4
  19. package/dist/accessories/batteries/delta2/services/switchXboostService.js.map +1 -1
  20. package/dist/accessories/batteries/delta2/simulations/delta2Simulator.js +3 -2
  21. package/dist/accessories/batteries/delta2/simulations/delta2Simulator.js.map +1 -1
  22. package/dist/accessories/batteries/deltapro/deltaProAccessory.js +3 -2
  23. package/dist/accessories/batteries/deltapro/deltaProAccessory.js.map +1 -1
  24. package/dist/accessories/batteries/deltapro/interfaces/deltaProHttpApiContracts.d.ts +2 -1
  25. package/dist/accessories/batteries/deltapro/services/deltaProOutletServiceBase.d.ts +2 -2
  26. package/dist/accessories/batteries/deltapro/services/deltaProOutletServiceBase.js +2 -2
  27. package/dist/accessories/batteries/deltapro/services/outletAcService.d.ts +1 -1
  28. package/dist/accessories/batteries/deltapro/services/outletAcService.js +1 -1
  29. package/dist/accessories/batteries/deltapro/services/outletAcService.js.map +1 -1
  30. package/dist/accessories/batteries/deltapro/services/outletCarService.d.ts +1 -1
  31. package/dist/accessories/batteries/deltapro/services/outletCarService.js +3 -3
  32. package/dist/accessories/batteries/deltapro/services/outletCarService.js.map +1 -1
  33. package/dist/accessories/batteries/deltapro/services/outletUsbService.d.ts +1 -1
  34. package/dist/accessories/batteries/deltapro/services/outletUsbService.js +1 -1
  35. package/dist/accessories/batteries/deltapro/services/outletUsbService.js.map +1 -1
  36. package/dist/accessories/batteries/deltapro/services/switchXboostService.d.ts +3 -3
  37. package/dist/accessories/batteries/deltapro/services/switchXboostService.js +4 -4
  38. package/dist/accessories/batteries/deltapro/services/switchXboostService.js.map +1 -1
  39. package/dist/accessories/batteries/deltapro/simulations/deltaProSimulator.js +3 -2
  40. package/dist/accessories/batteries/deltapro/simulations/deltaProSimulator.js.map +1 -1
  41. package/dist/accessories/batteries/deltapro3/deltaPro3Accessory.d.ts +0 -1
  42. package/dist/accessories/batteries/deltapro3/deltaPro3Accessory.js +5 -7
  43. package/dist/accessories/batteries/deltapro3/deltaPro3Accessory.js.map +1 -1
  44. package/dist/accessories/batteries/deltapro3/services/deltaPro3OutletServiceBase.d.ts +2 -2
  45. package/dist/accessories/batteries/deltapro3/services/deltaPro3OutletServiceBase.js +2 -2
  46. package/dist/accessories/batteries/deltapro3/services/outletAcHvService.d.ts +1 -1
  47. package/dist/accessories/batteries/deltapro3/services/outletAcHvService.js +1 -1
  48. package/dist/accessories/batteries/deltapro3/services/outletAcHvService.js.map +1 -1
  49. package/dist/accessories/batteries/deltapro3/services/outletAcLvService.d.ts +1 -1
  50. package/dist/accessories/batteries/deltapro3/services/outletAcLvService.js +1 -1
  51. package/dist/accessories/batteries/deltapro3/services/outletAcLvService.js.map +1 -1
  52. package/dist/accessories/batteries/deltapro3/services/outletDc12vService.d.ts +1 -1
  53. package/dist/accessories/batteries/deltapro3/services/outletDc12vService.js +1 -1
  54. package/dist/accessories/batteries/deltapro3/services/outletDc12vService.js.map +1 -1
  55. package/dist/accessories/batteries/deltapro3/services/switchXboostService.d.ts +3 -3
  56. package/dist/accessories/batteries/deltapro3/services/switchXboostService.js +4 -4
  57. package/dist/accessories/batteries/deltapro3/services/switchXboostService.js.map +1 -1
  58. package/dist/accessories/batteries/deltaproultra/services/deltaProUltraOutletServiceBase.d.ts +2 -2
  59. package/dist/accessories/batteries/deltaproultra/services/deltaProUltraOutletServiceBase.js +2 -2
  60. package/dist/accessories/batteries/deltaproultra/services/outletAcService.d.ts +1 -1
  61. package/dist/accessories/batteries/deltaproultra/services/outletAcService.js +1 -1
  62. package/dist/accessories/batteries/deltaproultra/services/outletAcService.js.map +1 -1
  63. package/dist/accessories/batteries/deltaproultra/services/outletUsbService.d.ts +1 -1
  64. package/dist/accessories/batteries/deltaproultra/services/outletUsbService.js +1 -1
  65. package/dist/accessories/batteries/deltaproultra/services/outletUsbService.js.map +1 -1
  66. package/dist/accessories/batteries/deltaproultra/services/switchXboostService.d.ts +3 -3
  67. package/dist/accessories/batteries/deltaproultra/services/switchXboostService.js +4 -4
  68. package/dist/accessories/batteries/deltaproultra/services/switchXboostService.js.map +1 -1
  69. package/dist/accessories/batteries/interfaces/batteryHttpApiContracts.d.ts +0 -4
  70. package/dist/accessories/batteries/interfaces/batteryHttpApiContracts.js +1 -6
  71. package/dist/accessories/batteries/interfaces/batteryHttpApiContracts.js.map +1 -1
  72. package/dist/accessories/glacier/glacierAccessory.d.ts +36 -0
  73. package/dist/accessories/glacier/glacierAccessory.js +207 -0
  74. package/dist/accessories/glacier/glacierAccessory.js.map +1 -0
  75. package/dist/accessories/glacier/interfaces/glacierHttpApiContracts.d.ts +64 -0
  76. package/dist/accessories/glacier/interfaces/glacierHttpApiContracts.js +36 -0
  77. package/dist/accessories/glacier/interfaces/glacierHttpApiContracts.js.map +1 -0
  78. package/dist/accessories/glacier/interfaces/glacierMqttApiContracts.d.ts +57 -0
  79. package/dist/accessories/glacier/interfaces/glacierMqttApiContracts.js +27 -0
  80. package/dist/accessories/glacier/interfaces/glacierMqttApiContracts.js.map +1 -0
  81. package/dist/accessories/glacier/services/glacierThermostatFridgeServiceBase.d.ts +11 -0
  82. package/dist/accessories/glacier/services/glacierThermostatFridgeServiceBase.js +30 -0
  83. package/dist/accessories/glacier/services/glacierThermostatFridgeServiceBase.js.map +1 -0
  84. package/dist/accessories/glacier/services/outletBatteryService.d.ts +8 -0
  85. package/dist/accessories/glacier/services/outletBatteryService.js +14 -0
  86. package/dist/accessories/glacier/services/outletBatteryService.js.map +1 -0
  87. package/dist/accessories/glacier/services/switchDetachIceService.d.ts +8 -0
  88. package/dist/accessories/glacier/services/switchDetachIceService.js +28 -0
  89. package/dist/accessories/glacier/services/switchDetachIceService.js.map +1 -0
  90. package/dist/accessories/glacier/services/switchDetachIceService.spec.d.ts +1 -0
  91. package/dist/accessories/glacier/services/switchEcoModeService.d.ts +9 -0
  92. package/dist/accessories/glacier/services/switchEcoModeService.js +30 -0
  93. package/dist/accessories/glacier/services/switchEcoModeService.js.map +1 -0
  94. package/dist/accessories/glacier/services/switchEcoModeService.spec.d.ts +1 -0
  95. package/dist/accessories/glacier/services/switchMakeIceService.d.ts +10 -0
  96. package/dist/accessories/glacier/services/switchMakeIceService.js +31 -0
  97. package/dist/accessories/glacier/services/switchMakeIceService.js.map +1 -0
  98. package/dist/accessories/glacier/services/switchMakeIceService.spec.d.ts +1 -0
  99. package/dist/accessories/glacier/services/thermostatFridgeDualLeftZoneService.d.ts +7 -0
  100. package/dist/accessories/glacier/services/thermostatFridgeDualLeftZoneService.js +15 -0
  101. package/dist/accessories/glacier/services/thermostatFridgeDualLeftZoneService.js.map +1 -0
  102. package/dist/accessories/glacier/services/thermostatFridgeDualLeftZoneService.spec.d.ts +1 -0
  103. package/dist/accessories/glacier/services/thermostatFridgeDualRightZoneService.d.ts +7 -0
  104. package/dist/accessories/glacier/services/thermostatFridgeDualRightZoneService.js +15 -0
  105. package/dist/accessories/glacier/services/thermostatFridgeDualRightZoneService.js.map +1 -0
  106. package/dist/accessories/glacier/services/thermostatFridgeDualRightZoneService.spec.d.ts +1 -0
  107. package/dist/accessories/glacier/services/thermostatFridgeSingleZoneService.d.ts +7 -0
  108. package/dist/accessories/glacier/services/thermostatFridgeSingleZoneService.js +15 -0
  109. package/dist/accessories/glacier/services/thermostatFridgeSingleZoneService.js.map +1 -0
  110. package/dist/accessories/glacier/services/thermostatFridgeSingleZoneService.spec.d.ts +1 -0
  111. package/dist/accessories/glacier/simulations/glacierSimulator.d.ts +6 -0
  112. package/dist/accessories/glacier/simulations/glacierSimulator.js +76 -0
  113. package/dist/accessories/glacier/simulations/glacierSimulator.js.map +1 -0
  114. package/dist/accessories/powerstream/interfaces/powerStreamHttpApiContracts.d.ts +1 -1
  115. package/dist/accessories/powerstream/powerStreamAccessory.js +2 -2
  116. package/dist/accessories/powerstream/powerStreamAccessory.js.map +1 -1
  117. package/dist/accessories/powerstream/services/outletInvService.d.ts +3 -3
  118. package/dist/accessories/powerstream/services/outletInvService.js +3 -3
  119. package/dist/accessories/powerstream/services/outletInvService.js.map +1 -1
  120. package/dist/accessories/powerstream/services/outletService.d.ts +3 -3
  121. package/dist/accessories/powerstream/services/outletService.js +3 -3
  122. package/dist/accessories/powerstream/services/outletService.js.map +1 -1
  123. package/dist/accessories/powerstream/simulations/powerStreamSimulator.js +2 -2
  124. package/dist/accessories/powerstream/simulations/powerStreamSimulator.js.map +1 -1
  125. package/dist/accessories/smartplug/interfaces/smartPlugMqttApiContracts.d.ts +2 -2
  126. package/dist/accessories/smartplug/services/outletService.d.ts +1 -1
  127. package/dist/accessories/smartplug/services/outletService.js +3 -3
  128. package/dist/accessories/smartplug/services/outletService.js.map +1 -1
  129. package/dist/apis/simulations/simulator.d.ts +1 -0
  130. package/dist/apis/simulations/simulator.js +3 -0
  131. package/dist/apis/simulations/simulator.js.map +1 -1
  132. package/dist/characteristics/characteristicContracts.d.ts +34 -0
  133. package/dist/characteristics/characteristicContracts.js +51 -0
  134. package/dist/characteristics/characteristicContracts.js.map +1 -0
  135. package/dist/config.d.ts +2 -1
  136. package/dist/config.js +1 -0
  137. package/dist/config.js.map +1 -1
  138. package/dist/homebridge-ui/public/index.html +1 -1
  139. package/dist/homebridge-ui/public/index.js +1 -1
  140. package/dist/platform.js +6 -0
  141. package/dist/platform.js.map +1 -1
  142. package/dist/services/contactSensorService.d.ts +9 -0
  143. package/dist/services/contactSensorService.js +21 -0
  144. package/dist/services/contactSensorService.js.map +1 -0
  145. package/dist/services/contactSensorService.spec.d.ts +1 -0
  146. package/dist/services/{batteryOutletServiceBase.d.ts → outletBatteryServiceBase.d.ts} +1 -1
  147. package/dist/services/{batteryOutletServiceBase.js → outletBatteryServiceBase.js} +4 -4
  148. package/dist/services/{batteryOutletServiceBase.js.map → outletBatteryServiceBase.js.map} +1 -1
  149. package/dist/services/outletBatteryServiceBase.spec.d.ts +1 -0
  150. package/dist/services/outletServiceBase.d.ts +1 -1
  151. package/dist/services/outletServiceBase.js +1 -1
  152. package/dist/services/outletServiceBase.js.map +1 -1
  153. package/dist/services/serviceBase.d.ts +4 -0
  154. package/dist/services/serviceBase.js +19 -0
  155. package/dist/services/serviceBase.js.map +1 -1
  156. package/dist/services/{switchXboostServiceBase.d.ts → switchServiceBase.d.ts} +4 -3
  157. package/dist/services/{switchXboostServiceBase.js → switchServiceBase.js} +11 -8
  158. package/dist/services/switchServiceBase.js.map +1 -0
  159. package/dist/services/switchServiceBase.spec.d.ts +1 -0
  160. package/dist/services/thermostatFridgeServiceBase.d.ts +26 -0
  161. package/dist/services/thermostatFridgeServiceBase.js +95 -0
  162. package/dist/services/thermostatFridgeServiceBase.js.map +1 -0
  163. package/dist/services/thermostatFridgeServiceBase.spec.d.ts +1 -0
  164. package/junit.xml +964 -660
  165. package/package.json +1 -1
  166. package/dist/services/switchXboostServiceBase.js.map +0 -1
  167. /package/dist/{services/batteryOutletServiceBase.spec.d.ts → accessories/glacier/glacierAccessory.spec.d.ts} +0 -0
  168. /package/dist/{services/switchXboostServiceBase.spec.d.ts → accessories/glacier/services/outletBatteryService.spec.d.ts} +0 -0
@@ -0,0 +1,207 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GlacierAccessory = void 0;
4
+ const ecoFlowAccessoryWithQuotaBase_1 = require("@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase");
5
+ const glacierHttpApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts");
6
+ const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
7
+ const outletBatteryService_1 = require("@ecoflow/accessories/glacier/services/outletBatteryService");
8
+ const switchDetachIceService_1 = require("@ecoflow/accessories/glacier/services/switchDetachIceService");
9
+ const switchEcoModeService_1 = require("@ecoflow/accessories/glacier/services/switchEcoModeService");
10
+ const switchMakeIceService_1 = require("@ecoflow/accessories/glacier/services/switchMakeIceService");
11
+ const thermostatFridgeDualLeftZoneService_1 = require("@ecoflow/accessories/glacier/services/thermostatFridgeDualLeftZoneService");
12
+ const thermostatFridgeDualRightZoneService_1 = require("@ecoflow/accessories/glacier/services/thermostatFridgeDualRightZoneService");
13
+ const thermostatFridgeSingleZoneService_1 = require("@ecoflow/accessories/glacier/services/thermostatFridgeSingleZoneService");
14
+ const characteristicContracts_1 = require("@ecoflow/characteristics/characteristicContracts");
15
+ const batteryStatusService_1 = require("@ecoflow/services/batteryStatusService");
16
+ const contactSensorService_1 = require("@ecoflow/services/contactSensorService");
17
+ class GlacierAccessory extends ecoFlowAccessoryWithQuotaBase_1.EcoFlowAccessoryWithQuotaBase {
18
+ batteryStatusService;
19
+ fridgeDualLeftZoneService;
20
+ fridgeDualRightZoneService;
21
+ fridgeSingleZoneService;
22
+ switchEcoModeService;
23
+ contactSensorDoorService;
24
+ outletBatteryService;
25
+ switchMakeIceSmallService;
26
+ switchMakeIceLargeService;
27
+ switchDetachIceService;
28
+ constructor(platform, accessory, config, log, httpApiManager, mqttApiManager, batteryStatusProvider) {
29
+ super(platform, accessory, config, log, httpApiManager, mqttApiManager);
30
+ this.batteryStatusService = new batteryStatusService_1.BatteryStatusService(this, batteryStatusProvider);
31
+ this.fridgeDualLeftZoneService = new thermostatFridgeDualLeftZoneService_1.ThermostatFridgeDualLeftZoneService(this);
32
+ this.fridgeDualRightZoneService = new thermostatFridgeDualRightZoneService_1.ThermostatFridgeDualRightZoneService(this);
33
+ this.fridgeSingleZoneService = new thermostatFridgeSingleZoneService_1.ThermostatFridgeSingleZoneService(this);
34
+ this.switchEcoModeService = new switchEcoModeService_1.SwitchEcoModeService(this);
35
+ this.contactSensorDoorService = new contactSensorService_1.ContactSensorService(this, 'Door');
36
+ this.outletBatteryService = new outletBatteryService_1.OutletBatteryService(this, batteryStatusProvider);
37
+ this.switchMakeIceSmallService = new switchMakeIceService_1.SwitchMakeIceService(this, glacierMqttApiContracts_1.IceCubeShapeType.Small);
38
+ this.switchMakeIceLargeService = new switchMakeIceService_1.SwitchMakeIceService(this, glacierMqttApiContracts_1.IceCubeShapeType.Large);
39
+ this.switchDetachIceService = new switchDetachIceService_1.SwitchDetachIceService(this);
40
+ }
41
+ getServices() {
42
+ return [
43
+ this.batteryStatusService,
44
+ this.fridgeDualLeftZoneService,
45
+ this.fridgeDualRightZoneService,
46
+ this.fridgeSingleZoneService,
47
+ this.switchEcoModeService,
48
+ this.contactSensorDoorService,
49
+ this.outletBatteryService,
50
+ this.switchMakeIceSmallService,
51
+ this.switchMakeIceLargeService,
52
+ this.switchDetachIceService,
53
+ ];
54
+ }
55
+ processQuotaMessage(message) {
56
+ const glacierMessage = message;
57
+ if (glacierMessage.typeCode === glacierMqttApiContracts_1.GlacierMqttMessageType.EMS) {
58
+ const emsStatus = message.params;
59
+ Object.assign(this.quota.bms_emsStatus, emsStatus);
60
+ this.updateEmsValues(emsStatus);
61
+ }
62
+ else if (glacierMessage.typeCode === glacierMqttApiContracts_1.GlacierMqttMessageType.BMS) {
63
+ const bmsStatus = message.params;
64
+ Object.assign(this.quota.bms_bmsStatus, bmsStatus);
65
+ this.updateBmsValues(bmsStatus);
66
+ }
67
+ else if (glacierMessage.typeCode === glacierMqttApiContracts_1.GlacierMqttMessageType.PD) {
68
+ const pdStatus = message.params;
69
+ Object.assign(this.quota.pd, pdStatus);
70
+ this.updatePdValues(pdStatus);
71
+ }
72
+ }
73
+ initializeQuota(quota) {
74
+ const result = quota ?? {};
75
+ if (!result.bms_emsStatus) {
76
+ result.bms_emsStatus = {};
77
+ }
78
+ if (!result.bms_bmsStatus) {
79
+ result.bms_bmsStatus = {};
80
+ }
81
+ if (!result.pd) {
82
+ result.pd = {};
83
+ }
84
+ return result;
85
+ }
86
+ updateInitialValues(initialData) {
87
+ this.updateEmsInitialValues(initialData.bms_emsStatus);
88
+ this.updateBmsInitialValues(initialData.bms_bmsStatus);
89
+ this.updatePdInitialValues(initialData.pd);
90
+ }
91
+ updateEmsInitialValues(params) {
92
+ const message = {
93
+ typeCode: glacierMqttApiContracts_1.GlacierMqttMessageType.EMS,
94
+ params,
95
+ };
96
+ this.processQuotaMessage(message);
97
+ }
98
+ updateBmsInitialValues(params) {
99
+ const message = {
100
+ typeCode: glacierMqttApiContracts_1.GlacierMqttMessageType.BMS,
101
+ params,
102
+ };
103
+ this.processQuotaMessage(message);
104
+ }
105
+ updatePdInitialValues(params) {
106
+ const message = {
107
+ typeCode: glacierMqttApiContracts_1.GlacierMqttMessageType.PD,
108
+ params,
109
+ };
110
+ this.processQuotaMessage(message);
111
+ }
112
+ updateEmsValues(params) {
113
+ if (params.lcdSoc !== undefined && params.minDsgSoc !== undefined) {
114
+ this.batteryStatusService.updateBatteryLevel(params.lcdSoc, params.minDsgSoc);
115
+ this.outletBatteryService.updateBatteryLevel(params.lcdSoc, params.minDsgSoc);
116
+ }
117
+ }
118
+ updateBmsValues(params) {
119
+ if (params.inWatts !== undefined) {
120
+ const isCharging = params.inWatts > 0 && (params.outWatts === undefined || params.inWatts !== params.outWatts);
121
+ this.batteryStatusService.updateChargingState(isCharging);
122
+ this.outletBatteryService.updateChargingState(isCharging);
123
+ this.outletBatteryService.updateInputConsumption(params.inWatts);
124
+ }
125
+ if (params.outWatts !== undefined) {
126
+ this.outletBatteryService.updateOutputConsumption(params.outWatts);
127
+ }
128
+ }
129
+ updatePdValues(params) {
130
+ this.updateFridgeZonesValues(params);
131
+ this.updateStateValues(params);
132
+ this.updateIceMakingValues(params);
133
+ }
134
+ updateFridgeZonesValues(params) {
135
+ if (params.pwrState !== undefined) {
136
+ const coolerState = params.pwrState === characteristicContracts_1.EnableType.On ? characteristicContracts_1.FridgeStateType.On : characteristicContracts_1.FridgeStateType.Off;
137
+ this.fridgeSingleZoneService.updateTargetState(coolerState);
138
+ this.fridgeDualLeftZoneService.updateTargetState(coolerState);
139
+ this.fridgeDualRightZoneService.updateTargetState(coolerState);
140
+ this.outletBatteryService.updateState(params.pwrState === characteristicContracts_1.EnableType.On);
141
+ }
142
+ if (params.flagTwoZone !== undefined && params.flagTwoZone === glacierHttpApiContracts_1.CoolingZoneType.Dual) {
143
+ this.fridgeSingleZoneService.updateEnabled(false);
144
+ this.fridgeDualLeftZoneService.updateEnabled(true);
145
+ this.fridgeDualRightZoneService.updateEnabled(true);
146
+ }
147
+ if (params.flagTwoZone !== undefined && params.flagTwoZone === glacierHttpApiContracts_1.CoolingZoneType.Single) {
148
+ this.fridgeSingleZoneService.updateEnabled(true);
149
+ this.fridgeDualLeftZoneService.updateEnabled(false);
150
+ this.fridgeDualRightZoneService.updateEnabled(false);
151
+ }
152
+ if (params.tmpL !== undefined) {
153
+ this.fridgeDualLeftZoneService.updateCurrentTemperature(params.tmpL);
154
+ }
155
+ if (params.tmpR !== undefined) {
156
+ this.fridgeDualRightZoneService.updateCurrentTemperature(params.tmpR);
157
+ }
158
+ if (params.tmpAver !== undefined) {
159
+ this.fridgeSingleZoneService.updateCurrentTemperature(params.tmpAver);
160
+ }
161
+ if (params.tmpLSet !== undefined) {
162
+ this.fridgeDualLeftZoneService.updateTargetTemperature(params.tmpLSet);
163
+ }
164
+ if (params.tmpRSet !== undefined) {
165
+ this.fridgeDualRightZoneService.updateTargetTemperature(params.tmpRSet);
166
+ }
167
+ if (params.tmpMSet !== undefined) {
168
+ this.fridgeSingleZoneService.updateTargetTemperature(params.tmpMSet);
169
+ }
170
+ }
171
+ updateStateValues(params) {
172
+ if (params.coolMode !== undefined) {
173
+ this.switchEcoModeService.updateState(params.coolMode === glacierHttpApiContracts_1.CoolModeType.Eco);
174
+ }
175
+ if (params.doorStat !== undefined) {
176
+ this.contactSensorDoorService.updateState(params.doorStat === glacierHttpApiContracts_1.ContactSensorType.Closed);
177
+ }
178
+ }
179
+ updateIceMakingValues(params) {
180
+ if (params.iceMkMode !== undefined) {
181
+ const iceSmallMaking = params.iceMkMode === glacierHttpApiContracts_1.MakeIceStatusType.SmallInPreparation ||
182
+ params.iceMkMode === glacierHttpApiContracts_1.MakeIceStatusType.SmallInProgress;
183
+ const iceLargeMaking = params.iceMkMode === glacierHttpApiContracts_1.MakeIceStatusType.LargeInPreparation ||
184
+ params.iceMkMode === glacierHttpApiContracts_1.MakeIceStatusType.LargeInProgress;
185
+ this.switchMakeIceSmallService.updateEnabled(iceSmallMaking);
186
+ this.switchMakeIceLargeService.updateEnabled(iceLargeMaking);
187
+ this.switchDetachIceService.updateEnabled(false);
188
+ this.switchMakeIceSmallService.updateState(iceSmallMaking);
189
+ this.switchMakeIceLargeService.updateState(iceLargeMaking);
190
+ this.switchDetachIceService.updateState(false);
191
+ }
192
+ if (params.icePercent !== undefined && params.icePercent === 100) {
193
+ this.switchMakeIceSmallService.updateEnabled(true);
194
+ this.switchMakeIceLargeService.updateEnabled(true);
195
+ }
196
+ if (params.fsmState !== undefined) {
197
+ this.switchMakeIceSmallService.updateEnabled(params.fsmState === glacierHttpApiContracts_1.DetachIceStatusType.Completed);
198
+ this.switchMakeIceLargeService.updateEnabled(params.fsmState === glacierHttpApiContracts_1.DetachIceStatusType.Completed);
199
+ this.switchDetachIceService.updateEnabled(true);
200
+ this.switchMakeIceSmallService.updateState(false);
201
+ this.switchMakeIceLargeService.updateState(false);
202
+ this.switchDetachIceService.updateState(params.fsmState === glacierHttpApiContracts_1.DetachIceStatusType.InProgress);
203
+ }
204
+ }
205
+ }
206
+ exports.GlacierAccessory = GlacierAccessory;
207
+ //# sourceMappingURL=glacierAccessory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glacierAccessory.js","sourceRoot":"","sources":["../../../src/accessories/glacier/glacierAccessory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ import { EnableType } from '@ecoflow/characteristics/characteristicContracts';
2
+ export declare enum CoolingZoneType {
3
+ Single = 1,
4
+ Dual = 2
5
+ }
6
+ export declare enum TemperatureType {
7
+ Celsius = 0,
8
+ Fahrenheit = 1
9
+ }
10
+ export declare enum CoolModeType {
11
+ Normal = 0,
12
+ Eco = 1
13
+ }
14
+ export declare enum MakeIceStatusType {
15
+ SmallInPreparation = 0,
16
+ LargeInPreparation = 1,
17
+ SmallInProgress = 2,
18
+ LargeInProgress = 3
19
+ }
20
+ export declare enum DetachIceStatusType {
21
+ InProgress = 4,
22
+ Completed = 5
23
+ }
24
+ export declare enum ContactSensorType {
25
+ Closed = 0,
26
+ Opened = 1
27
+ }
28
+ export interface EmsStatus {
29
+ lcdSoc?: number;
30
+ minDsgSoc?: number;
31
+ }
32
+ export interface BmsStatus {
33
+ inWatts?: number;
34
+ outWatts?: number;
35
+ vol?: number;
36
+ amp?: number;
37
+ }
38
+ export interface PdStatusFridgeZones {
39
+ pwrState?: EnableType;
40
+ flagTwoZone?: CoolingZoneType;
41
+ tmpUnit?: TemperatureType;
42
+ tmpR?: number;
43
+ tmpL?: number;
44
+ tmpAver?: number;
45
+ tmpRSet?: number;
46
+ tmpLSet?: number;
47
+ tmpMSet?: number;
48
+ }
49
+ export interface PdStatusState {
50
+ coolMode?: CoolModeType;
51
+ doorStat?: ContactSensorType;
52
+ }
53
+ export interface PdStatusIceMaking {
54
+ icePercent?: number;
55
+ iceMkMode?: MakeIceStatusType;
56
+ fsmState?: DetachIceStatusType;
57
+ }
58
+ export interface PdStatus extends PdStatusFridgeZones, PdStatusState, PdStatusIceMaking {
59
+ }
60
+ export interface GlacierAllQuotaData {
61
+ bms_emsStatus: EmsStatus;
62
+ bms_bmsStatus: BmsStatus;
63
+ pd: PdStatus;
64
+ }
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ContactSensorType = exports.DetachIceStatusType = exports.MakeIceStatusType = exports.CoolModeType = exports.TemperatureType = exports.CoolingZoneType = void 0;
4
+ var CoolingZoneType;
5
+ (function (CoolingZoneType) {
6
+ CoolingZoneType[CoolingZoneType["Single"] = 1] = "Single";
7
+ CoolingZoneType[CoolingZoneType["Dual"] = 2] = "Dual";
8
+ })(CoolingZoneType || (exports.CoolingZoneType = CoolingZoneType = {}));
9
+ var TemperatureType;
10
+ (function (TemperatureType) {
11
+ TemperatureType[TemperatureType["Celsius"] = 0] = "Celsius";
12
+ TemperatureType[TemperatureType["Fahrenheit"] = 1] = "Fahrenheit";
13
+ })(TemperatureType || (exports.TemperatureType = TemperatureType = {}));
14
+ var CoolModeType;
15
+ (function (CoolModeType) {
16
+ CoolModeType[CoolModeType["Normal"] = 0] = "Normal";
17
+ CoolModeType[CoolModeType["Eco"] = 1] = "Eco";
18
+ })(CoolModeType || (exports.CoolModeType = CoolModeType = {}));
19
+ var MakeIceStatusType;
20
+ (function (MakeIceStatusType) {
21
+ MakeIceStatusType[MakeIceStatusType["SmallInPreparation"] = 0] = "SmallInPreparation";
22
+ MakeIceStatusType[MakeIceStatusType["LargeInPreparation"] = 1] = "LargeInPreparation";
23
+ MakeIceStatusType[MakeIceStatusType["SmallInProgress"] = 2] = "SmallInProgress";
24
+ MakeIceStatusType[MakeIceStatusType["LargeInProgress"] = 3] = "LargeInProgress";
25
+ })(MakeIceStatusType || (exports.MakeIceStatusType = MakeIceStatusType = {}));
26
+ var DetachIceStatusType;
27
+ (function (DetachIceStatusType) {
28
+ DetachIceStatusType[DetachIceStatusType["InProgress"] = 4] = "InProgress";
29
+ DetachIceStatusType[DetachIceStatusType["Completed"] = 5] = "Completed";
30
+ })(DetachIceStatusType || (exports.DetachIceStatusType = DetachIceStatusType = {}));
31
+ var ContactSensorType;
32
+ (function (ContactSensorType) {
33
+ ContactSensorType[ContactSensorType["Closed"] = 0] = "Closed";
34
+ ContactSensorType[ContactSensorType["Opened"] = 1] = "Opened";
35
+ })(ContactSensorType || (exports.ContactSensorType = ContactSensorType = {}));
36
+ //# sourceMappingURL=glacierHttpApiContracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glacierHttpApiContracts.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/interfaces/glacierHttpApiContracts.ts"],"names":[],"mappings":";;;AAEA,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,yDAAU,CAAA;IACV,qDAAQ,CAAA;AACV,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B;AAED,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,2DAAW,CAAA;IACX,iEAAc,CAAA;AAChB,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B;AAED,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,mDAAU,CAAA;IACV,6CAAO,CAAA;AACT,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB;AAED,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,qFAAsB,CAAA;IACtB,qFAAsB,CAAA;IACtB,+EAAmB,CAAA;IACnB,+EAAmB,CAAA;AACrB,CAAC,EALW,iBAAiB,iCAAjB,iBAAiB,QAK5B;AAED,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,yEAAc,CAAA;IACd,uEAAa,CAAA;AACf,CAAC,EAHW,mBAAmB,mCAAnB,mBAAmB,QAG9B;AAED,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,6DAAU,CAAA;IACV,6DAAU,CAAA;AACZ,CAAC,EAHW,iBAAiB,iCAAjB,iBAAiB,QAG5B"}
@@ -0,0 +1,57 @@
1
+ import { CoolModeType, TemperatureType } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
2
+ import { MqttQuotaMessage, MqttQuotaMessageWithParams, MqttSetMessage, MqttSetMessageWithParams, MqttSetReplyMessage } from '@ecoflow/apis/interfaces/mqttApiContracts';
3
+ import { EnableType } from '@ecoflow/characteristics/characteristicContracts';
4
+ export declare enum GlacierMqttSetModuleType {
5
+ Default = 1
6
+ }
7
+ export declare enum GlacierMqttMessageType {
8
+ PD = "pdStatus",
9
+ BMS = "bmsStatus",
10
+ EMS = "emsStatus"
11
+ }
12
+ export interface GlacierMqttQuotaMessage extends MqttQuotaMessage {
13
+ typeCode: GlacierMqttMessageType;
14
+ }
15
+ export interface GlacierMqttQuotaMessageWithParams<TParams> extends MqttQuotaMessageWithParams<TParams>, GlacierMqttQuotaMessage {
16
+ }
17
+ export declare enum GlacierMqttSetOperateType {
18
+ Temperature = "temp",
19
+ TemperatureUnit = "tmpUnit",
20
+ EcoMode = "ecoMode",
21
+ MakeIce = "iceMake",
22
+ DetachIce = "deIce"
23
+ }
24
+ export interface GlacierMqttSetMessage extends MqttSetMessage {
25
+ moduleType: GlacierMqttSetModuleType;
26
+ operateType: GlacierMqttSetOperateType;
27
+ }
28
+ export interface GlacierMqttSetMessageParams {
29
+ }
30
+ export interface GlacierMqttSetMessageWithParams<TParams extends GlacierMqttSetMessageParams> extends MqttSetMessageWithParams<TParams>, GlacierMqttSetMessage {
31
+ }
32
+ export interface GlacierMqttSetTemperatureMessageParams extends GlacierMqttSetMessageParams {
33
+ tmpR?: number;
34
+ tmpL?: number;
35
+ tmpM?: number;
36
+ }
37
+ export interface GlacierMqttSetTemperatureUnitMessageParams extends GlacierMqttSetMessageParams {
38
+ unit: TemperatureType;
39
+ }
40
+ export interface GlacierMqttSetEcoModeMessageParams extends GlacierMqttSetMessageParams {
41
+ mode: CoolModeType;
42
+ }
43
+ export declare enum IceCubeShapeType {
44
+ Small = 0,
45
+ Large = 1
46
+ }
47
+ export interface GlacierMqttSetMakeIceMessageParams extends GlacierMqttSetMessageParams {
48
+ enable: EnableType;
49
+ iceShape: IceCubeShapeType;
50
+ }
51
+ export interface GlacierMqttSetDetachIceMessageParams extends GlacierMqttSetMessageParams {
52
+ enable: EnableType;
53
+ }
54
+ export interface GlacierMqttSetReplyMessage extends MqttSetReplyMessage {
55
+ moduleType: GlacierMqttSetModuleType;
56
+ operateType: GlacierMqttSetOperateType;
57
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IceCubeShapeType = exports.GlacierMqttSetOperateType = exports.GlacierMqttMessageType = exports.GlacierMqttSetModuleType = void 0;
4
+ var GlacierMqttSetModuleType;
5
+ (function (GlacierMqttSetModuleType) {
6
+ GlacierMqttSetModuleType[GlacierMqttSetModuleType["Default"] = 1] = "Default";
7
+ })(GlacierMqttSetModuleType || (exports.GlacierMqttSetModuleType = GlacierMqttSetModuleType = {}));
8
+ var GlacierMqttMessageType;
9
+ (function (GlacierMqttMessageType) {
10
+ GlacierMqttMessageType["PD"] = "pdStatus";
11
+ GlacierMqttMessageType["BMS"] = "bmsStatus";
12
+ GlacierMqttMessageType["EMS"] = "emsStatus";
13
+ })(GlacierMqttMessageType || (exports.GlacierMqttMessageType = GlacierMqttMessageType = {}));
14
+ var GlacierMqttSetOperateType;
15
+ (function (GlacierMqttSetOperateType) {
16
+ GlacierMqttSetOperateType["Temperature"] = "temp";
17
+ GlacierMqttSetOperateType["TemperatureUnit"] = "tmpUnit";
18
+ GlacierMqttSetOperateType["EcoMode"] = "ecoMode";
19
+ GlacierMqttSetOperateType["MakeIce"] = "iceMake";
20
+ GlacierMqttSetOperateType["DetachIce"] = "deIce";
21
+ })(GlacierMqttSetOperateType || (exports.GlacierMqttSetOperateType = GlacierMqttSetOperateType = {}));
22
+ var IceCubeShapeType;
23
+ (function (IceCubeShapeType) {
24
+ IceCubeShapeType[IceCubeShapeType["Small"] = 0] = "Small";
25
+ IceCubeShapeType[IceCubeShapeType["Large"] = 1] = "Large";
26
+ })(IceCubeShapeType || (exports.IceCubeShapeType = IceCubeShapeType = {}));
27
+ //# sourceMappingURL=glacierMqttApiContracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glacierMqttApiContracts.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/interfaces/glacierMqttApiContracts.ts"],"names":[],"mappings":";;;AAUA,IAAY,wBAEX;AAFD,WAAY,wBAAwB;IAClC,6EAAW,CAAA;AACb,CAAC,EAFW,wBAAwB,wCAAxB,wBAAwB,QAEnC;AAED,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,yCAAe,CAAA;IACf,2CAAiB,CAAA;IACjB,2CAAiB,CAAA;AACnB,CAAC,EAJW,sBAAsB,sCAAtB,sBAAsB,QAIjC;AAUD,IAAY,yBAMX;AAND,WAAY,yBAAyB;IACnC,iDAAoB,CAAA;IACpB,wDAA2B,CAAA;IAC3B,gDAAmB,CAAA;IACnB,gDAAmB,CAAA;IACnB,gDAAmB,CAAA;AACrB,CAAC,EANW,yBAAyB,yCAAzB,yBAAyB,QAMpC;AA2BD,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,yDAAS,CAAA;IACT,yDAAS,CAAA;AACX,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B"}
@@ -0,0 +1,11 @@
1
+ import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
2
+ import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
3
+ import { GlacierMqttSetMessageParams, GlacierMqttSetOperateType } from '@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts';
4
+ import { TemperatureDisplayUnitsType } from '@ecoflow/characteristics/characteristicContracts';
5
+ import { ThermostatFridgeServiceBase } from '@ecoflow/services/thermostatFridgeServiceBase';
6
+ export declare abstract class GlacierThermostatFridgeServiceBase extends ThermostatFridgeServiceBase {
7
+ constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>, serviceSubType: string);
8
+ protected processOnSetTargetState(): Promise<void>;
9
+ protected processOnSetTemperatureDisplayUnits(value: TemperatureDisplayUnitsType, revert: () => void): Promise<void>;
10
+ protected sendSetCommand<TParams extends GlacierMqttSetMessageParams>(operateType: GlacierMqttSetOperateType, params: TParams, revert: () => void): Promise<void>;
11
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GlacierThermostatFridgeServiceBase = void 0;
4
+ const glacierHttpApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts");
5
+ const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
6
+ const characteristicContracts_1 = require("@ecoflow/characteristics/characteristicContracts");
7
+ const thermostatFridgeServiceBase_1 = require("@ecoflow/services/thermostatFridgeServiceBase");
8
+ class GlacierThermostatFridgeServiceBase extends thermostatFridgeServiceBase_1.ThermostatFridgeServiceBase {
9
+ constructor(ecoFlowAccessory, serviceSubType) {
10
+ super(ecoFlowAccessory, -25, 10, serviceSubType);
11
+ }
12
+ processOnSetTargetState() {
13
+ throw new this.platform.api.hap.HapStatusError(-70404 /* this.platform.api.hap.HAPStatus.READ_ONLY_CHARACTERISTIC */);
14
+ }
15
+ processOnSetTemperatureDisplayUnits(value, revert) {
16
+ return this.sendSetCommand(glacierMqttApiContracts_1.GlacierMqttSetOperateType.TemperatureUnit, { unit: value === characteristicContracts_1.TemperatureDisplayUnitsType.Celsius ? glacierHttpApiContracts_1.TemperatureType.Celsius : glacierHttpApiContracts_1.TemperatureType.Fahrenheit }, revert);
17
+ }
18
+ sendSetCommand(operateType, params, revert) {
19
+ const message = {
20
+ id: 0,
21
+ version: '',
22
+ moduleType: glacierMqttApiContracts_1.GlacierMqttSetModuleType.Default,
23
+ operateType,
24
+ params,
25
+ };
26
+ return this.ecoFlowAccessory.sendSetCommand(message, revert);
27
+ }
28
+ }
29
+ exports.GlacierThermostatFridgeServiceBase = GlacierThermostatFridgeServiceBase;
30
+ //# sourceMappingURL=glacierThermostatFridgeServiceBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glacierThermostatFridgeServiceBase.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/glacierThermostatFridgeServiceBase.ts"],"names":[],"mappings":";;;AACA,6GAAuH;AACvH,6GAMyE;AACzE,8FAA+F;AAC/F,+FAA4F;AAE5F,MAAsB,kCAAmC,SAAQ,yDAA2B;IAC1F,YAAY,gBAAoE,EAAE,cAAsB;QACtG,KAAK,CAAC,gBAAgB,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;IACnD,CAAC;IAEkB,uBAAuB;QACxC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,uEAA0D,CAAC;IAC3G,CAAC;IAEkB,mCAAmC,CACpD,KAAkC,EAClC,MAAkB;QAElB,OAAO,IAAI,CAAC,cAAc,CACxB,mDAAyB,CAAC,eAAe,EACzC,EAAE,IAAI,EAAE,KAAK,KAAK,qDAA2B,CAAC,OAAO,CAAC,CAAC,CAAC,yCAAe,CAAC,OAAO,CAAC,CAAC,CAAC,yCAAe,CAAC,UAAU,EAAE,EAC9G,MAAM,CACP,CAAC;IACJ,CAAC;IAES,cAAc,CACtB,WAAsC,EACtC,MAAe,EACf,MAAkB;QAElB,MAAM,OAAO,GAA6C;YACxD,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,kDAAwB,CAAC,OAAO;YAC5C,WAAW;YACX,MAAM;SACP,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AAnCD,gFAmCC"}
@@ -0,0 +1,8 @@
1
+ import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
2
+ import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
3
+ import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
4
+ import { OutletBatteryServiceBase } from '@ecoflow/services/outletBatteryServiceBase';
5
+ export declare class OutletBatteryService extends OutletBatteryServiceBase {
6
+ constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>, batteryStatusProvider: BatteryStatusProvider);
7
+ protected processOnSetOn(): Promise<void>;
8
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OutletBatteryService = void 0;
4
+ const outletBatteryServiceBase_1 = require("@ecoflow/services/outletBatteryServiceBase");
5
+ class OutletBatteryService extends outletBatteryServiceBase_1.OutletBatteryServiceBase {
6
+ constructor(ecoFlowAccessory, batteryStatusProvider) {
7
+ super(ecoFlowAccessory, batteryStatusProvider, 'Battery', ecoFlowAccessory.config.battery?.additionalCharacteristics);
8
+ }
9
+ processOnSetOn() {
10
+ throw new this.platform.api.hap.HapStatusError(-70404 /* this.platform.api.hap.HAPStatus.READ_ONLY_CHARACTERISTIC */);
11
+ }
12
+ }
13
+ exports.OutletBatteryService = OutletBatteryService;
14
+ //# sourceMappingURL=outletBatteryService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outletBatteryService.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/outletBatteryService.ts"],"names":[],"mappings":";;;AAGA,yFAAsF;AAEtF,MAAa,oBAAqB,SAAQ,mDAAwB;IAChE,YACE,gBAAoE,EACpE,qBAA4C;QAE5C,KAAK,CACH,gBAAgB,EAChB,qBAAqB,EACrB,SAAS,EACT,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,CAC3D,CAAC;IACJ,CAAC;IAEkB,cAAc;QAC/B,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,uEAA0D,CAAC;IAC3G,CAAC;CACF;AAhBD,oDAgBC"}
@@ -0,0 +1,8 @@
1
+ import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
2
+ import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
3
+ import { SwitchServiceBase } from '@ecoflow/services/switchServiceBase';
4
+ export declare class SwitchDetachIceService extends SwitchServiceBase {
5
+ constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>);
6
+ protected processOnSetOn(value: boolean, revert: () => void): Promise<void>;
7
+ private sendOn;
8
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SwitchDetachIceService = void 0;
4
+ const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
5
+ const characteristicContracts_1 = require("@ecoflow/characteristics/characteristicContracts");
6
+ const switchServiceBase_1 = require("@ecoflow/services/switchServiceBase");
7
+ class SwitchDetachIceService extends switchServiceBase_1.SwitchServiceBase {
8
+ constructor(ecoFlowAccessory) {
9
+ super(ecoFlowAccessory, 'Detach Ice');
10
+ }
11
+ processOnSetOn(value, revert) {
12
+ return this.sendOn({
13
+ enable: value ? characteristicContracts_1.EnableType.On : characteristicContracts_1.EnableType.Off,
14
+ }, revert);
15
+ }
16
+ sendOn(params, revert) {
17
+ const message = {
18
+ id: 0,
19
+ version: '',
20
+ moduleType: glacierMqttApiContracts_1.GlacierMqttSetModuleType.Default,
21
+ operateType: glacierMqttApiContracts_1.GlacierMqttSetOperateType.DetachIce,
22
+ params,
23
+ };
24
+ return this.ecoFlowAccessory.sendSetCommand(message, revert);
25
+ }
26
+ }
27
+ exports.SwitchDetachIceService = SwitchDetachIceService;
28
+ //# sourceMappingURL=switchDetachIceService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switchDetachIceService.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/switchDetachIceService.ts"],"names":[],"mappings":";;;AAEA,6GAMyE;AACzE,8FAA8E;AAC9E,2EAAwE;AAExE,MAAa,sBAAuB,SAAQ,qCAAiB;IAC3D,YAAY,gBAAoE;QAC9E,KAAK,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACxC,CAAC;IAEkB,cAAc,CAAC,KAAc,EAAE,MAAkB;QAClE,OAAO,IAAI,CAAC,MAAM,CAChB;YACE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,oCAAU,CAAC,EAAE,CAAC,CAAC,CAAC,oCAAU,CAAC,GAAG;SAC/C,EACD,MAAM,CACP,CAAC;IACJ,CAAC;IAEO,MAAM,CAA8C,MAAe,EAAE,MAAkB;QAC7F,MAAM,OAAO,GAA6C;YACxD,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,kDAAwB,CAAC,OAAO;YAC5C,WAAW,EAAE,mDAAyB,CAAC,SAAS;YAChD,MAAM;SACP,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AAzBD,wDAyBC"}
@@ -0,0 +1,9 @@
1
+ import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
2
+ import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
3
+ import { SwitchServiceBase } from '@ecoflow/services/switchServiceBase';
4
+ export declare class SwitchEcoModeService extends SwitchServiceBase {
5
+ protected readonly ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>;
6
+ constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>);
7
+ protected processOnSetOn(value: boolean, revert: () => void): Promise<void>;
8
+ private sendOn;
9
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SwitchEcoModeService = void 0;
4
+ const glacierHttpApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts");
5
+ const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
6
+ const switchServiceBase_1 = require("@ecoflow/services/switchServiceBase");
7
+ class SwitchEcoModeService extends switchServiceBase_1.SwitchServiceBase {
8
+ ecoFlowAccessory;
9
+ constructor(ecoFlowAccessory) {
10
+ super(ecoFlowAccessory, 'ECO mode');
11
+ this.ecoFlowAccessory = ecoFlowAccessory;
12
+ }
13
+ processOnSetOn(value, revert) {
14
+ return this.sendOn({
15
+ mode: value ? glacierHttpApiContracts_1.CoolModeType.Eco : glacierHttpApiContracts_1.CoolModeType.Normal,
16
+ }, revert);
17
+ }
18
+ sendOn(params, revert) {
19
+ const message = {
20
+ id: 0,
21
+ version: '',
22
+ moduleType: glacierMqttApiContracts_1.GlacierMqttSetModuleType.Default,
23
+ operateType: glacierMqttApiContracts_1.GlacierMqttSetOperateType.EcoMode,
24
+ params,
25
+ };
26
+ return this.ecoFlowAccessory.sendSetCommand(message, revert);
27
+ }
28
+ }
29
+ exports.SwitchEcoModeService = SwitchEcoModeService;
30
+ //# sourceMappingURL=switchEcoModeService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switchEcoModeService.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/switchEcoModeService.ts"],"names":[],"mappings":";;;AACA,6GAAoH;AACpH,6GAMyE;AACzE,2EAAwE;AAExE,MAAa,oBAAqB,SAAQ,qCAAiB;IAC1B;IAA/B,YAA+B,gBAAoE;QACjG,KAAK,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;QADP,qBAAgB,GAAhB,gBAAgB,CAAoD;IAEnG,CAAC;IAEkB,cAAc,CAAC,KAAc,EAAE,MAAkB;QAClE,OAAO,IAAI,CAAC,MAAM,CAChB;YACE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,sCAAY,CAAC,GAAG,CAAC,CAAC,CAAC,sCAAY,CAAC,MAAM;SACrD,EACD,MAAM,CACP,CAAC;IACJ,CAAC;IAEO,MAAM,CAA8C,MAAe,EAAE,MAAkB;QAC7F,MAAM,OAAO,GAA6C;YACxD,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,kDAAwB,CAAC,OAAO;YAC5C,WAAW,EAAE,mDAAyB,CAAC,OAAO;YAC9C,MAAM;SACP,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AAzBD,oDAyBC"}
@@ -0,0 +1,10 @@
1
+ import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
2
+ import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
3
+ import { IceCubeShapeType } from '@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts';
4
+ import { SwitchServiceBase } from '@ecoflow/services/switchServiceBase';
5
+ export declare class SwitchMakeIceService extends SwitchServiceBase {
6
+ private readonly iceCubeShapeType;
7
+ constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>, iceCubeShapeType: IceCubeShapeType);
8
+ protected processOnSetOn(value: boolean, revert: () => void): Promise<void>;
9
+ private sendOn;
10
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SwitchMakeIceService = void 0;
4
+ const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
5
+ const characteristicContracts_1 = require("@ecoflow/characteristics/characteristicContracts");
6
+ const switchServiceBase_1 = require("@ecoflow/services/switchServiceBase");
7
+ class SwitchMakeIceService extends switchServiceBase_1.SwitchServiceBase {
8
+ iceCubeShapeType;
9
+ constructor(ecoFlowAccessory, iceCubeShapeType) {
10
+ super(ecoFlowAccessory, `Make Ice ${iceCubeShapeType === glacierMqttApiContracts_1.IceCubeShapeType.Small ? 'Small' : 'Large'} Cubes`);
11
+ this.iceCubeShapeType = iceCubeShapeType;
12
+ }
13
+ processOnSetOn(value, revert) {
14
+ return this.sendOn({
15
+ enable: value ? characteristicContracts_1.EnableType.On : characteristicContracts_1.EnableType.Off,
16
+ iceShape: this.iceCubeShapeType,
17
+ }, revert);
18
+ }
19
+ sendOn(params, revert) {
20
+ const message = {
21
+ id: 0,
22
+ version: '',
23
+ moduleType: glacierMqttApiContracts_1.GlacierMqttSetModuleType.Default,
24
+ operateType: glacierMqttApiContracts_1.GlacierMqttSetOperateType.MakeIce,
25
+ params,
26
+ };
27
+ return this.ecoFlowAccessory.sendSetCommand(message, revert);
28
+ }
29
+ }
30
+ exports.SwitchMakeIceService = SwitchMakeIceService;
31
+ //# sourceMappingURL=switchMakeIceService.js.map