@riddix/hamh 2.1.0-alpha.399 → 2.1.0-alpha.401
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/backend/cli.js
CHANGED
|
@@ -166940,41 +166940,6 @@ function buildEntityPayload(registry2, entityId) {
|
|
|
166940
166940
|
deviceRegistry
|
|
166941
166941
|
};
|
|
166942
166942
|
}
|
|
166943
|
-
function buildAirPurifierSubType(attributes7, mapping) {
|
|
166944
|
-
const supportedFeatures = attributes7.supported_features ?? 0;
|
|
166945
|
-
const features2 = /* @__PURE__ */ new Set();
|
|
166946
|
-
if (testBit(supportedFeatures, FanDeviceFeature.SET_SPEED)) {
|
|
166947
|
-
features2.add("MultiSpeed");
|
|
166948
|
-
features2.add("Step");
|
|
166949
|
-
}
|
|
166950
|
-
if (testBit(supportedFeatures, FanDeviceFeature.PRESET_MODE)) {
|
|
166951
|
-
features2.add("Auto");
|
|
166952
|
-
}
|
|
166953
|
-
if (testBit(supportedFeatures, FanDeviceFeature.DIRECTION)) {
|
|
166954
|
-
features2.add("AirflowDirection");
|
|
166955
|
-
}
|
|
166956
|
-
if (testBit(supportedFeatures, FanDeviceFeature.OSCILLATE)) {
|
|
166957
|
-
features2.add("Rocking");
|
|
166958
|
-
}
|
|
166959
|
-
const presetModes = attributes7.preset_modes ?? [];
|
|
166960
|
-
const hasWindModes = presetModes.some(
|
|
166961
|
-
(m) => m.toLowerCase() === "natural" || m.toLowerCase() === "nature" || m.toLowerCase() === "sleep"
|
|
166962
|
-
);
|
|
166963
|
-
if (hasWindModes) {
|
|
166964
|
-
features2.add("Wind");
|
|
166965
|
-
}
|
|
166966
|
-
let device = AirPurifierDevice.with(
|
|
166967
|
-
IdentifyServer2,
|
|
166968
|
-
HomeAssistantEntityBehavior,
|
|
166969
|
-
FanOnOffServer,
|
|
166970
|
-
FanFanControlServer.with(...features2)
|
|
166971
|
-
);
|
|
166972
|
-
const hasFilterLife = attributes7.filter_life != null || attributes7.filter_life_remaining != null || attributes7.filter_life_level != null || !!mapping?.filterLifeEntity;
|
|
166973
|
-
if (hasFilterLife) {
|
|
166974
|
-
device = device.with(AirPurifierHepaFilterMonitoringServer);
|
|
166975
|
-
}
|
|
166976
|
-
return device;
|
|
166977
|
-
}
|
|
166978
166943
|
var coolingModes = [
|
|
166979
166944
|
ClimateHvacMode.heat_cool,
|
|
166980
166945
|
ClimateHvacMode.cool
|
|
@@ -167069,11 +167034,40 @@ var ComposedAirPurifierEndpoint = class _ComposedAirPurifierEndpoint extends End
|
|
|
167069
167034
|
const { registry: registry2, primaryEntityId } = config10;
|
|
167070
167035
|
const primaryPayload = buildEntityPayload(registry2, primaryEntityId);
|
|
167071
167036
|
if (!primaryPayload) return void 0;
|
|
167072
|
-
|
|
167037
|
+
const airPurifierAttributes = primaryPayload.state.attributes;
|
|
167038
|
+
const supportedFeatures = airPurifierAttributes.supported_features ?? 0;
|
|
167039
|
+
const features2 = /* @__PURE__ */ new Set();
|
|
167040
|
+
if (testBit(supportedFeatures, FanDeviceFeature.SET_SPEED)) {
|
|
167041
|
+
features2.add("MultiSpeed");
|
|
167042
|
+
features2.add("Step");
|
|
167043
|
+
}
|
|
167044
|
+
if (testBit(supportedFeatures, FanDeviceFeature.PRESET_MODE)) {
|
|
167045
|
+
features2.add("Auto");
|
|
167046
|
+
}
|
|
167047
|
+
if (testBit(supportedFeatures, FanDeviceFeature.DIRECTION)) {
|
|
167048
|
+
features2.add("AirflowDirection");
|
|
167049
|
+
}
|
|
167050
|
+
if (testBit(supportedFeatures, FanDeviceFeature.OSCILLATE)) {
|
|
167051
|
+
features2.add("Rocking");
|
|
167052
|
+
}
|
|
167053
|
+
const presetModes = airPurifierAttributes.preset_modes ?? [];
|
|
167054
|
+
const hasWindModes = presetModes.some(
|
|
167055
|
+
(m) => m.toLowerCase() === "natural" || m.toLowerCase() === "nature" || m.toLowerCase() === "sleep"
|
|
167056
|
+
);
|
|
167057
|
+
if (hasWindModes) {
|
|
167058
|
+
features2.add("Wind");
|
|
167059
|
+
}
|
|
167060
|
+
let parentType = AirPurifierDevice.with(
|
|
167073
167061
|
BasicInformationServer2,
|
|
167074
167062
|
IdentifyServer2,
|
|
167075
|
-
HomeAssistantEntityBehavior
|
|
167063
|
+
HomeAssistantEntityBehavior,
|
|
167064
|
+
FanOnOffServer,
|
|
167065
|
+
FanFanControlServer.with(...features2)
|
|
167076
167066
|
);
|
|
167067
|
+
const hasFilterLife = airPurifierAttributes.filter_life != null || airPurifierAttributes.filter_life_remaining != null || airPurifierAttributes.filter_life_level != null || !!config10.mapping?.filterLifeEntity;
|
|
167068
|
+
if (hasFilterLife) {
|
|
167069
|
+
parentType = parentType.with(AirPurifierHepaFilterMonitoringServer);
|
|
167070
|
+
}
|
|
167077
167071
|
const mapping = {
|
|
167078
167072
|
entityId: primaryEntityId,
|
|
167079
167073
|
...config10.batteryEntityId ? { batteryEntity: config10.batteryEntityId } : {},
|
|
@@ -167093,22 +167087,6 @@ var ComposedAirPurifierEndpoint = class _ComposedAirPurifierEndpoint extends End
|
|
|
167093
167087
|
const endpointId = createEndpointId2(primaryEntityId, config10.customName);
|
|
167094
167088
|
const parts = [];
|
|
167095
167089
|
const subEndpointMap = /* @__PURE__ */ new Map();
|
|
167096
|
-
const airPurifierAttributes = primaryPayload.state.attributes;
|
|
167097
|
-
const airPurifierSubType = buildAirPurifierSubType(
|
|
167098
|
-
airPurifierAttributes,
|
|
167099
|
-
config10.mapping
|
|
167100
|
-
);
|
|
167101
|
-
const airPurifierSub = new Endpoint(
|
|
167102
|
-
airPurifierSubType.set({
|
|
167103
|
-
homeAssistantEntity: {
|
|
167104
|
-
entity: primaryPayload,
|
|
167105
|
-
mapping
|
|
167106
|
-
}
|
|
167107
|
-
}),
|
|
167108
|
-
{ id: `${endpointId}_purifier` }
|
|
167109
|
-
);
|
|
167110
|
-
parts.push(airPurifierSub);
|
|
167111
|
-
subEndpointMap.set(primaryEntityId, airPurifierSub);
|
|
167112
167090
|
let tempSub;
|
|
167113
167091
|
if (config10.temperatureEntityId) {
|
|
167114
167092
|
const tempPayload = buildEntityPayload(
|
|
@@ -167174,7 +167152,7 @@ var ComposedAirPurifierEndpoint = class _ComposedAirPurifierEndpoint extends End
|
|
|
167174
167152
|
endpoint.subEndpoints.set(entityId, sub);
|
|
167175
167153
|
}
|
|
167176
167154
|
const subLabels = [
|
|
167177
|
-
"AirPurifier",
|
|
167155
|
+
"AirPurifier(parent)",
|
|
167178
167156
|
tempSub ? "+Temp" : "",
|
|
167179
167157
|
humSub ? "+Hum" : "",
|
|
167180
167158
|
climateSub ? "+Therm" : "",
|
|
@@ -173043,14 +173021,14 @@ function RvcCleanModeServer2(config10, initialState) {
|
|
|
173043
173021
|
const defaultModes = [
|
|
173044
173022
|
{
|
|
173045
173023
|
label: "Vacuum",
|
|
173046
|
-
mode:
|
|
173024
|
+
mode: 0,
|
|
173047
173025
|
modeTags: [{ value: RvcCleanMode3.ModeTag.Vacuum }]
|
|
173048
173026
|
}
|
|
173049
173027
|
];
|
|
173050
173028
|
return RvcCleanModeServerBase.set({
|
|
173051
173029
|
config: config10,
|
|
173052
173030
|
supportedModes: initialState?.supportedModes ?? defaultModes,
|
|
173053
|
-
currentMode: initialState?.currentMode ??
|
|
173031
|
+
currentMode: initialState?.currentMode ?? 0
|
|
173054
173032
|
});
|
|
173055
173033
|
}
|
|
173056
173034
|
|
|
@@ -173646,7 +173624,16 @@ function createDefaultRvcCleanModeServer() {
|
|
|
173646
173624
|
],
|
|
173647
173625
|
setCleanMode: () => void 0
|
|
173648
173626
|
};
|
|
173649
|
-
return RvcCleanModeServer2(defaultConfig2
|
|
173627
|
+
return RvcCleanModeServer2(defaultConfig2, {
|
|
173628
|
+
supportedModes: [
|
|
173629
|
+
{
|
|
173630
|
+
label: "Vacuum",
|
|
173631
|
+
mode: MODE_VACUUM,
|
|
173632
|
+
modeTags: [{ value: RvcCleanMode3.ModeTag.Vacuum }]
|
|
173633
|
+
}
|
|
173634
|
+
],
|
|
173635
|
+
currentMode: MODE_VACUUM
|
|
173636
|
+
});
|
|
173650
173637
|
}
|
|
173651
173638
|
function supportsCleaningModes(attributes7) {
|
|
173652
173639
|
return isDreameVacuum(attributes7) || isEcovacsVacuum(attributes7);
|