@riddix/hamh 2.1.0-alpha.630 → 2.1.0-alpha.632

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.
@@ -147874,6 +147874,7 @@ WARNING: ${includeIdentity ? "This backup contains sensitive Matter identity dat
147874
147874
  valetudoIdentifier: config10.valetudoIdentifier,
147875
147875
  coverSwapOpenClose: config10.coverSwapOpenClose,
147876
147876
  disableClimateOnOff: config10.disableClimateOnOff,
147877
+ disableClimateFanControl: config10.disableClimateFanControl,
147877
147878
  customServiceAreas: config10.customServiceAreas,
147878
147879
  customFanSpeedTags: config10.customFanSpeedTags,
147879
147880
  composedEntities: config10.composedEntities
@@ -148020,6 +148021,7 @@ WARNING: ${includeIdentity ? "This backup contains sensitive Matter identity dat
148020
148021
  valetudoIdentifier: config10.valetudoIdentifier,
148021
148022
  coverSwapOpenClose: config10.coverSwapOpenClose,
148022
148023
  disableClimateOnOff: config10.disableClimateOnOff,
148024
+ disableClimateFanControl: config10.disableClimateFanControl,
148023
148025
  customServiceAreas: config10.customServiceAreas,
148024
148026
  customFanSpeedTags: config10.customFanSpeedTags,
148025
148027
  composedEntities: config10.composedEntities
@@ -148840,6 +148842,7 @@ function entityMappingApi(mappingStorage) {
148840
148842
  valetudoIdentifier: body.valetudoIdentifier,
148841
148843
  coverSwapOpenClose: body.coverSwapOpenClose,
148842
148844
  disableClimateOnOff: body.disableClimateOnOff,
148845
+ disableClimateFanControl: body.disableClimateFanControl,
148843
148846
  composedEntities: body.composedEntities
148844
148847
  };
148845
148848
  const config10 = await mappingStorage.setMapping(request);
@@ -149303,7 +149306,8 @@ function configToProfileEntry(config10) {
149303
149306
  customFanSpeedTags: config10.customFanSpeedTags,
149304
149307
  valetudoIdentifier: config10.valetudoIdentifier,
149305
149308
  coverSwapOpenClose: config10.coverSwapOpenClose,
149306
- disableClimateOnOff: config10.disableClimateOnOff
149309
+ disableClimateOnOff: config10.disableClimateOnOff,
149310
+ disableClimateFanControl: config10.disableClimateFanControl
149307
149311
  };
149308
149312
  }
149309
149313
  function mappingProfileApi(mappingStorage) {
@@ -149425,7 +149429,8 @@ function mappingProfileApi(mappingStorage) {
149425
149429
  customFanSpeedTags: entry.customFanSpeedTags,
149426
149430
  valetudoIdentifier: entry.valetudoIdentifier,
149427
149431
  coverSwapOpenClose: entry.coverSwapOpenClose,
149428
- disableClimateOnOff: entry.disableClimateOnOff
149432
+ disableClimateOnOff: entry.disableClimateOnOff,
149433
+ disableClimateFanControl: entry.disableClimateFanControl
149429
149434
  });
149430
149435
  applied++;
149431
149436
  } catch (e) {
@@ -153295,9 +153300,10 @@ var EntityMappingStorage = class extends Service {
153295
153300
  valetudoIdentifier: request.valetudoIdentifier?.trim() || void 0,
153296
153301
  coverSwapOpenClose: request.coverSwapOpenClose || void 0,
153297
153302
  disableClimateOnOff: request.disableClimateOnOff || void 0,
153303
+ disableClimateFanControl: request.disableClimateFanControl || void 0,
153298
153304
  composedEntities: request.composedEntities?.filter((e) => e.entityId?.trim()) ?? void 0
153299
153305
  };
153300
- if (!config10.matterDeviceType && !config10.customName && !config10.customProductName && !config10.customVendorName && !config10.customSerialNumber && config10.disabled !== true && !config10.filterLifeEntity && !config10.cleaningModeEntity && !config10.temperatureEntity && !config10.humidityEntity && !config10.batteryEntity && !config10.roomEntities && !config10.disableLockPin && !config10.powerEntity && !config10.energyEntity && !config10.pressureEntity && !config10.suctionLevelEntity && !config10.mopIntensityEntity && (!config10.customServiceAreas || config10.customServiceAreas.length === 0) && (!config10.customFanSpeedTags || Object.keys(config10.customFanSpeedTags).length === 0) && !config10.currentRoomEntity && !config10.valetudoIdentifier && !config10.coverSwapOpenClose && !config10.disableClimateOnOff && (!config10.composedEntities || config10.composedEntities.length === 0)) {
153306
+ if (!config10.matterDeviceType && !config10.customName && !config10.customProductName && !config10.customVendorName && !config10.customSerialNumber && config10.disabled !== true && !config10.filterLifeEntity && !config10.cleaningModeEntity && !config10.temperatureEntity && !config10.humidityEntity && !config10.batteryEntity && !config10.roomEntities && !config10.disableLockPin && !config10.powerEntity && !config10.energyEntity && !config10.pressureEntity && !config10.suctionLevelEntity && !config10.mopIntensityEntity && (!config10.customServiceAreas || config10.customServiceAreas.length === 0) && (!config10.customFanSpeedTags || Object.keys(config10.customFanSpeedTags).length === 0) && !config10.currentRoomEntity && !config10.valetudoIdentifier && !config10.coverSwapOpenClose && !config10.disableClimateOnOff && !config10.disableClimateFanControl && (!config10.composedEntities || config10.composedEntities.length === 0)) {
153301
153307
  bridgeMap.delete(request.entityId);
153302
153308
  } else {
153303
153309
  bridgeMap.set(request.entityId, config10);
@@ -171745,7 +171751,9 @@ var config4 = {
171745
171751
  const direction = getHeatCoolOnlyDirection(entity, agent);
171746
171752
  return direction === "cooling" ? Thermostat3.SystemMode.Cool : Thermostat3.SystemMode.Heat;
171747
171753
  }
171748
- const hasMatterAuto = modes.includes(ClimateHvacMode.heat_cool) || modes.includes(ClimateHvacMode.auto);
171754
+ const hasCoolCapability = modes.includes(ClimateHvacMode.cool) || modes.includes(ClimateHvacMode.heat_cool);
171755
+ const hasHeatCapability = modes.includes(ClimateHvacMode.heat) || modes.includes(ClimateHvacMode.heat_cool);
171756
+ const hasMatterAuto = (modes.includes(ClimateHvacMode.heat_cool) || modes.includes(ClimateHvacMode.auto)) && hasCoolCapability && hasHeatCapability;
171749
171757
  if (hasMatterAuto) {
171750
171758
  return systemMode;
171751
171759
  }
@@ -171917,10 +171925,7 @@ function ClimateDevice(homeAssistantEntity) {
171917
171925
  }
171918
171926
  const supportsHumidity = attributes7.current_humidity != null || testBit(supportedFeatures, ClimateDeviceFeature.TARGET_HUMIDITY);
171919
171927
  const supportsOnOff = testBit(supportedFeatures, ClimateDeviceFeature.TURN_ON) && testBit(supportedFeatures, ClimateDeviceFeature.TURN_OFF) && homeAssistantEntity.mapping?.disableClimateOnOff !== true;
171920
- const supportsFanMode = testBit(
171921
- supportedFeatures,
171922
- ClimateDeviceFeature.FAN_MODE
171923
- );
171928
+ const supportsFanMode = testBit(supportedFeatures, ClimateDeviceFeature.FAN_MODE) && homeAssistantEntity.mapping?.disableClimateFanControl !== true;
171924
171929
  const initialState = {
171925
171930
  // Pass actual current_temperature for initial state.
171926
171931
  // If unavailable (null/undefined), update() will fall back to the