@riddix/hamh 2.1.0-alpha.528 → 2.1.0-alpha.529

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.
@@ -147567,7 +147567,7 @@ var DiagnosticService = class {
147567
147567
  }
147568
147568
  }
147569
147569
  }
147570
- const entities = this.collectEntities(bridge.aggregator);
147570
+ const entities = bridge.aggregator ? this.collectEntities(bridge.aggregator) : [];
147571
147571
  return {
147572
147572
  bridgeId: data.id,
147573
147573
  bridgeName: data.name,
@@ -167737,6 +167737,26 @@ function PowerSourceServer2(config10) {
167737
167737
  order: PowerSource3.Cluster.id
167738
167738
  });
167739
167739
  }
167740
+ var defaultBatteryConfig = {
167741
+ getBatteryPercent: (entity, agent) => {
167742
+ const homeAssistant = agent.get(HomeAssistantEntityBehavior);
167743
+ const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
167744
+ if (batteryEntity) {
167745
+ const stateProvider = agent.env.get(EntityStateProvider);
167746
+ const battery = stateProvider.getBatteryPercent(batteryEntity);
167747
+ if (battery != null) {
167748
+ return Math.max(0, Math.min(100, battery));
167749
+ }
167750
+ }
167751
+ const attrs = entity.attributes;
167752
+ const level = attrs.battery_level ?? attrs.battery;
167753
+ if (level == null || Number.isNaN(Number(level))) {
167754
+ return null;
167755
+ }
167756
+ return Number(level);
167757
+ }
167758
+ };
167759
+ var DefaultPowerSourceServer = PowerSourceServer2(defaultBatteryConfig);
167740
167760
 
167741
167761
  // src/matter/behaviors/temperature-measurement-server.ts
167742
167762
  init_home_assistant_entity_behavior();
@@ -170824,25 +170844,6 @@ function ClimateThermostatServer(initialState = {}, features2) {
170824
170844
  }
170825
170845
 
170826
170846
  // src/matter/endpoints/legacy/climate/index.ts
170827
- var ClimatePowerSourceServer = PowerSourceServer2({
170828
- getBatteryPercent: (entity, agent) => {
170829
- const homeAssistant = agent.get(HomeAssistantEntityBehavior);
170830
- const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
170831
- if (batteryEntity) {
170832
- const stateProvider = agent.env.get(EntityStateProvider);
170833
- const battery = stateProvider.getBatteryPercent(batteryEntity);
170834
- if (battery != null) {
170835
- return Math.max(0, Math.min(100, battery));
170836
- }
170837
- }
170838
- const attrs = entity.attributes;
170839
- const level = attrs.battery_level ?? attrs.battery;
170840
- if (level == null || Number.isNaN(Number(level))) {
170841
- return null;
170842
- }
170843
- return Number(level);
170844
- }
170845
- });
170846
170847
  var ClimateDeviceType = (supportsOnOff, supportsHumidity, supportsFanMode, hasBattery, features2, initialState = {}) => {
170847
170848
  const additionalClusters = [];
170848
170849
  if (supportsOnOff) {
@@ -170852,7 +170853,7 @@ var ClimateDeviceType = (supportsOnOff, supportsHumidity, supportsFanMode, hasBa
170852
170853
  additionalClusters.push(ClimateHumidityMeasurementServer);
170853
170854
  }
170854
170855
  if (hasBattery) {
170855
- additionalClusters.push(ClimatePowerSourceServer);
170856
+ additionalClusters.push(DefaultPowerSourceServer);
170856
170857
  }
170857
170858
  const thermostatServer = ClimateThermostatServer(initialState, features2);
170858
170859
  if (supportsFanMode) {
@@ -171446,25 +171447,6 @@ var CoverWindowCoveringServer = WindowCoveringServer2(config5);
171446
171447
 
171447
171448
  // src/matter/endpoints/legacy/cover/index.ts
171448
171449
  var logger177 = Logger.get("CoverDevice");
171449
- var CoverPowerSourceServer = PowerSourceServer2({
171450
- getBatteryPercent: (entity, agent) => {
171451
- const homeAssistant = agent.get(HomeAssistantEntityBehavior);
171452
- const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
171453
- if (batteryEntity) {
171454
- const stateProvider = agent.env.get(EntityStateProvider);
171455
- const battery = stateProvider.getBatteryPercent(batteryEntity);
171456
- if (battery != null) {
171457
- return Math.max(0, Math.min(100, battery));
171458
- }
171459
- }
171460
- const attrs = entity.attributes;
171461
- const level = attrs.battery_level ?? attrs.battery;
171462
- if (level == null || Number.isNaN(Number(level))) {
171463
- return null;
171464
- }
171465
- return Number(level);
171466
- }
171467
- });
171468
171450
  var CoverDeviceType = (supportedFeatures, hasBattery, entityId) => {
171469
171451
  const features2 = /* @__PURE__ */ new Set();
171470
171452
  if (testBit(supportedFeatures, CoverSupportedFeatures.support_open)) {
@@ -171499,7 +171481,10 @@ var CoverDeviceType = (supportedFeatures, hasBattery, entityId) => {
171499
171481
  CoverWindowCoveringServer.with(...features2)
171500
171482
  ];
171501
171483
  if (hasBattery) {
171502
- return WindowCoveringDevice.with(...baseBehaviors, CoverPowerSourceServer);
171484
+ return WindowCoveringDevice.with(
171485
+ ...baseBehaviors,
171486
+ DefaultPowerSourceServer
171487
+ );
171503
171488
  }
171504
171489
  return WindowCoveringDevice.with(...baseBehaviors);
171505
171490
  };
@@ -171620,25 +171605,6 @@ function EventDevice(homeAssistantEntity) {
171620
171605
  // src/matter/endpoints/legacy/fan/index.ts
171621
171606
  init_dist();
171622
171607
  init_home_assistant_entity_behavior();
171623
- var FanPowerSourceServer = PowerSourceServer2({
171624
- getBatteryPercent: (entity, agent) => {
171625
- const homeAssistant = agent.get(HomeAssistantEntityBehavior);
171626
- const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
171627
- if (batteryEntity) {
171628
- const stateProvider = agent.env.get(EntityStateProvider);
171629
- const battery = stateProvider.getBatteryPercent(batteryEntity);
171630
- if (battery != null) {
171631
- return Math.max(0, Math.min(100, battery));
171632
- }
171633
- }
171634
- const attrs = entity.attributes;
171635
- const level = attrs.battery_level ?? attrs.battery;
171636
- if (level == null || Number.isNaN(Number(level))) {
171637
- return null;
171638
- }
171639
- return Number(level);
171640
- }
171641
- });
171642
171608
  function FanDevice2(homeAssistantEntity) {
171643
171609
  const attributes7 = homeAssistantEntity.entity.state.attributes;
171644
171610
  const supportedFeatures = attributes7.supported_features ?? 0;
@@ -171658,7 +171624,7 @@ function FanDevice2(homeAssistantEntity) {
171658
171624
  BasicInformationServer2,
171659
171625
  HomeAssistantEntityBehavior,
171660
171626
  FanOnOffServer,
171661
- FanPowerSourceServer
171627
+ DefaultPowerSourceServer
171662
171628
  ) : OnOffPlugInUnitDevice.with(
171663
171629
  IdentifyServer2,
171664
171630
  BasicInformationServer2,
@@ -171693,7 +171659,7 @@ function FanDevice2(homeAssistantEntity) {
171693
171659
  HomeAssistantEntityBehavior,
171694
171660
  FanOnOffServer,
171695
171661
  FanFanControlServer.with(...features2),
171696
- FanPowerSourceServer
171662
+ DefaultPowerSourceServer
171697
171663
  ) : FanDevice.with(
171698
171664
  IdentifyServer2,
171699
171665
  BasicInformationServer2,
@@ -172218,25 +172184,6 @@ var ColorTemperatureLightType = ColorTemperatureLightDevice.with(
172218
172184
 
172219
172185
  // src/matter/endpoints/legacy/light/devices/dimmable-light.ts
172220
172186
  init_home_assistant_entity_behavior();
172221
- var LightPowerSourceServer = PowerSourceServer2({
172222
- getBatteryPercent: (entity, agent) => {
172223
- const homeAssistant = agent.get(HomeAssistantEntityBehavior);
172224
- const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
172225
- if (batteryEntity) {
172226
- const stateProvider = agent.env.get(EntityStateProvider);
172227
- const battery = stateProvider.getBatteryPercent(batteryEntity);
172228
- if (battery != null) {
172229
- return Math.max(0, Math.min(100, battery));
172230
- }
172231
- }
172232
- const attrs = entity.attributes;
172233
- const level = attrs.battery_level ?? attrs.battery;
172234
- if (level == null || Number.isNaN(Number(level))) {
172235
- return null;
172236
- }
172237
- return Number(level);
172238
- }
172239
- });
172240
172187
  var DimmableLightType = DimmableLightDevice.with(
172241
172188
  IdentifyServer2,
172242
172189
  BasicInformationServer2,
@@ -172250,30 +172197,11 @@ var DimmableLightWithBatteryType = DimmableLightDevice.with(
172250
172197
  HomeAssistantEntityBehavior,
172251
172198
  LightOnOffServer,
172252
172199
  LightLevelControlServer,
172253
- LightPowerSourceServer
172200
+ DefaultPowerSourceServer
172254
172201
  );
172255
172202
 
172256
172203
  // src/matter/endpoints/legacy/light/devices/extended-color-light.ts
172257
172204
  init_home_assistant_entity_behavior();
172258
- var LightPowerSourceServer2 = PowerSourceServer2({
172259
- getBatteryPercent: (entity, agent) => {
172260
- const homeAssistant = agent.get(HomeAssistantEntityBehavior);
172261
- const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
172262
- if (batteryEntity) {
172263
- const stateProvider = agent.env.get(EntityStateProvider);
172264
- const battery = stateProvider.getBatteryPercent(batteryEntity);
172265
- if (battery != null) {
172266
- return Math.max(0, Math.min(100, battery));
172267
- }
172268
- }
172269
- const attrs = entity.attributes;
172270
- const level = attrs.battery_level ?? attrs.battery;
172271
- if (level == null || Number.isNaN(Number(level))) {
172272
- return null;
172273
- }
172274
- return Number(level);
172275
- }
172276
- });
172277
172205
  var ExtendedColorLightType = (supportsColorControl, supportsTemperature, hasBattery = false) => {
172278
172206
  const features2 = /* @__PURE__ */ new Set();
172279
172207
  if (supportsColorControl) {
@@ -172290,7 +172218,7 @@ var ExtendedColorLightType = (supportsColorControl, supportsTemperature, hasBatt
172290
172218
  LightOnOffServer,
172291
172219
  LightLevelControlServer,
172292
172220
  LightColorControlServer.with(...features2),
172293
- LightPowerSourceServer2
172221
+ DefaultPowerSourceServer
172294
172222
  );
172295
172223
  }
172296
172224
  return ExtendedColorLightDevice.with(
@@ -172305,25 +172233,6 @@ var ExtendedColorLightType = (supportsColorControl, supportsTemperature, hasBatt
172305
172233
 
172306
172234
  // src/matter/endpoints/legacy/light/devices/on-off-light-device.ts
172307
172235
  init_home_assistant_entity_behavior();
172308
- var LightPowerSourceServer3 = PowerSourceServer2({
172309
- getBatteryPercent: (entity, agent) => {
172310
- const homeAssistant = agent.get(HomeAssistantEntityBehavior);
172311
- const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
172312
- if (batteryEntity) {
172313
- const stateProvider = agent.env.get(EntityStateProvider);
172314
- const battery = stateProvider.getBatteryPercent(batteryEntity);
172315
- if (battery != null) {
172316
- return Math.max(0, Math.min(100, battery));
172317
- }
172318
- }
172319
- const attrs = entity.attributes;
172320
- const level = attrs.battery_level ?? attrs.battery;
172321
- if (level == null || Number.isNaN(Number(level))) {
172322
- return null;
172323
- }
172324
- return Number(level);
172325
- }
172326
- });
172327
172236
  var OnOffLightType = OnOffLightDevice.with(
172328
172237
  IdentifyServer2,
172329
172238
  BasicInformationServer2,
@@ -172335,7 +172244,7 @@ var OnOffLightWithBatteryType = OnOffLightDevice.with(
172335
172244
  BasicInformationServer2,
172336
172245
  HomeAssistantEntityBehavior,
172337
172246
  LightOnOffServer,
172338
- LightPowerSourceServer3
172247
+ DefaultPowerSourceServer
172339
172248
  );
172340
172249
 
172341
172250
  // src/matter/endpoints/legacy/light/index.ts
@@ -173026,25 +172935,6 @@ var lockServerConfig = {
173026
172935
  unlock: () => ({ action: "lock.unlock" }),
173027
172936
  unlatch: () => ({ action: "lock.open" })
173028
172937
  };
173029
- var LockPowerSourceServer = PowerSourceServer2({
173030
- getBatteryPercent: (entity, agent) => {
173031
- const homeAssistant = agent.get(HomeAssistantEntityBehavior);
173032
- const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
173033
- if (batteryEntity) {
173034
- const stateProvider = agent.env.get(EntityStateProvider);
173035
- const battery = stateProvider.getBatteryPercent(batteryEntity);
173036
- if (battery != null) {
173037
- return Math.max(0, Math.min(100, battery));
173038
- }
173039
- }
173040
- const attrs = entity.attributes;
173041
- const level = attrs.battery_level ?? attrs.battery;
173042
- if (level == null || Number.isNaN(Number(level))) {
173043
- return null;
173044
- }
173045
- return Number(level);
173046
- }
173047
- });
173048
172938
  var LockDeviceType = DoorLockDevice.with(
173049
172939
  BasicInformationServer2,
173050
172940
  IdentifyServer2,
@@ -173056,7 +172946,7 @@ var LockWithBatteryDeviceType = DoorLockDevice.with(
173056
172946
  IdentifyServer2,
173057
172947
  HomeAssistantEntityBehavior,
173058
172948
  LockServerWithPin(lockServerConfig),
173059
- LockPowerSourceServer
172949
+ DefaultPowerSourceServer
173060
172950
  );
173061
172951
  var LockWithUnlatchDeviceType = DoorLockDevice.with(
173062
172952
  BasicInformationServer2,
@@ -173069,7 +172959,7 @@ var LockWithUnlatchAndBatteryDeviceType = DoorLockDevice.with(
173069
172959
  IdentifyServer2,
173070
172960
  HomeAssistantEntityBehavior,
173071
172961
  LockServerWithPinAndUnbolt(lockServerConfig),
173072
- LockPowerSourceServer
172962
+ DefaultPowerSourceServer
173073
172963
  );
173074
172964
  function LockDevice(homeAssistantEntity) {
173075
172965
  const attrs = homeAssistantEntity.entity.state.attributes;
@@ -173651,25 +173541,7 @@ var PumpWithBatteryType = PumpDevice.with(
173651
173541
  HomeAssistantEntityBehavior,
173652
173542
  PumpOnOffServer,
173653
173543
  PumpConfigurationAndControlServer2,
173654
- PowerSourceServer2({
173655
- getBatteryPercent: (entity, agent) => {
173656
- const homeAssistant = agent.get(HomeAssistantEntityBehavior);
173657
- const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
173658
- if (batteryEntity) {
173659
- const stateProvider = agent.env.get(EntityStateProvider);
173660
- const battery = stateProvider.getBatteryPercent(batteryEntity);
173661
- if (battery != null) {
173662
- return Math.max(0, Math.min(100, battery));
173663
- }
173664
- }
173665
- const attrs = entity.attributes;
173666
- const level = attrs.battery_level ?? attrs.battery;
173667
- if (level == null || Number.isNaN(Number(level))) {
173668
- return null;
173669
- }
173670
- return Number(level);
173671
- }
173672
- })
173544
+ DefaultPowerSourceServer
173673
173545
  );
173674
173546
  function PumpEndpoint(homeAssistantEntity) {
173675
173547
  const attrs = homeAssistantEntity.entity.state.attributes;
@@ -175481,25 +175353,7 @@ var SwitchWithBatteryEndpointType = OnOffPlugInUnitDevice.with(
175481
175353
  IdentifyServer2,
175482
175354
  HomeAssistantEntityBehavior,
175483
175355
  SwitchOnOffServer,
175484
- PowerSourceServer2({
175485
- getBatteryPercent: (entity, agent) => {
175486
- const homeAssistant = agent.get(HomeAssistantEntityBehavior);
175487
- const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
175488
- if (batteryEntity) {
175489
- const stateProvider = agent.env.get(EntityStateProvider);
175490
- const battery = stateProvider.getBatteryPercent(batteryEntity);
175491
- if (battery != null) {
175492
- return Math.max(0, Math.min(100, battery));
175493
- }
175494
- }
175495
- const attrs = entity.attributes;
175496
- const level = attrs.battery_level ?? attrs.battery;
175497
- if (level == null || Number.isNaN(Number(level))) {
175498
- return null;
175499
- }
175500
- return Number(level);
175501
- }
175502
- })
175356
+ DefaultPowerSourceServer
175503
175357
  );
175504
175358
  function SwitchDevice(homeAssistantEntity) {
175505
175359
  const attrs = homeAssistantEntity.entity.state.attributes;
@@ -177701,25 +177555,7 @@ var ValveWithBatteryEndpointType = WaterValveDevice.with(
177701
177555
  IdentifyServer2,
177702
177556
  HomeAssistantEntityBehavior,
177703
177557
  ValveServer,
177704
- PowerSourceServer2({
177705
- getBatteryPercent: (entity, agent) => {
177706
- const homeAssistant = agent.get(HomeAssistantEntityBehavior);
177707
- const batteryEntity = homeAssistant.state.mapping?.batteryEntity;
177708
- if (batteryEntity) {
177709
- const stateProvider = agent.env.get(EntityStateProvider);
177710
- const battery = stateProvider.getBatteryPercent(batteryEntity);
177711
- if (battery != null) {
177712
- return Math.max(0, Math.min(100, battery));
177713
- }
177714
- }
177715
- const attrs = entity.attributes;
177716
- const level = attrs.battery_level ?? attrs.battery;
177717
- if (level == null || Number.isNaN(Number(level))) {
177718
- return null;
177719
- }
177720
- return Number(level);
177721
- }
177722
- })
177558
+ DefaultPowerSourceServer
177723
177559
  );
177724
177560
  function ValveDevice(homeAssistantEntity) {
177725
177561
  const attrs = homeAssistantEntity.entity.state.attributes;