@riddix/hamh 2.1.0-alpha.755 → 2.1.0-alpha.756

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.
@@ -124071,6 +124071,14 @@ function computeControllerWarnings(controllers, exposed) {
124071
124071
  }
124072
124072
  return warnings;
124073
124073
  }
124074
+ function controllerWarningsForFabrics(fabrics, exposed) {
124075
+ const controllers = [
124076
+ ...new Set(fabrics.map((f) => classifyController(f.rootVendorId)).filter((c) => c !== void 0))
124077
+ ];
124078
+ if (controllers.length === 0)
124079
+ return [];
124080
+ return computeControllerWarnings(controllers, exposed);
124081
+ }
124074
124082
  var controllerByVendorId, deviceTypeIdSupport, controllerLabels;
124075
124083
  var init_controller_compat = __esm({
124076
124084
  "../common/dist/controller-compat.js"() {
@@ -127121,12 +127129,7 @@ function healthApi(bridgeService, haClient, version2, startTime) {
127121
127129
  const fabrics = data.commissioning?.fabrics ?? [];
127122
127130
  const sessionInfo = b.getSessionInfo();
127123
127131
  const exposed = b.getExposedDeviceTypes();
127124
- const controllers = [
127125
- ...new Set(
127126
- fabrics.map((f) => classifyController(f.rootVendorId)).filter((c) => c !== void 0)
127127
- )
127128
- ];
127129
- const controllerWarnings = controllers.length > 0 ? computeControllerWarnings(controllers, exposed) : [];
127132
+ const controllerWarnings = data.controllerWarnings ?? [];
127130
127133
  const entityDiagnostics = buildEntityDiagnostics(
127131
127134
  exposed,
127132
127135
  data.failedEntities ?? [],
@@ -128353,15 +128356,13 @@ function metricsApi(bridgeService, haClient, haRegistry, startTime) {
128353
128356
  router.get("/", (_, res) => {
128354
128357
  const memoryUsage = process.memoryUsage();
128355
128358
  const bridges = bridgeService.bridges;
128356
- const running = bridges.filter((b) => b.data.status === "running").length;
128357
- const stopped = bridges.filter((b) => b.data.status === "stopped").length;
128358
- const failed = bridges.filter((b) => b.data.status === "failed").length;
128359
- const totalDevices = bridges.reduce(
128360
- (sum, b) => sum + b.data.deviceCount,
128361
- 0
128362
- );
128363
- const totalFabrics = bridges.reduce(
128364
- (sum, b) => sum + (b.data.commissioning?.fabrics?.length ?? 0),
128359
+ const datas = bridges.map((b) => b.data);
128360
+ const running = datas.filter((d) => d.status === "running").length;
128361
+ const stopped = datas.filter((d) => d.status === "stopped").length;
128362
+ const failed = datas.filter((d) => d.status === "failed").length;
128363
+ const totalDevices = datas.reduce((sum, d) => sum + d.deviceCount, 0);
128364
+ const totalFabrics = datas.reduce(
128365
+ (sum, d) => sum + (d.commissioning?.fabrics?.length ?? 0),
128365
128366
  0
128366
128367
  );
128367
128368
  const metrics = {
@@ -128393,15 +128394,13 @@ function metricsApi(bridgeService, haClient, haRegistry, startTime) {
128393
128394
  const memoryUsage = process.memoryUsage();
128394
128395
  const bridges = bridgeService.bridges;
128395
128396
  const uptime2 = Math.floor((Date.now() - startTime) / 1e3);
128396
- const running = bridges.filter((b) => b.data.status === "running").length;
128397
- const stopped = bridges.filter((b) => b.data.status === "stopped").length;
128398
- const failed = bridges.filter((b) => b.data.status === "failed").length;
128399
- const totalDevices = bridges.reduce(
128400
- (sum, b) => sum + b.data.deviceCount,
128401
- 0
128402
- );
128403
- const totalFabrics = bridges.reduce(
128404
- (sum, b) => sum + (b.data.commissioning?.fabrics?.length ?? 0),
128397
+ const datas = bridges.map((b) => b.data);
128398
+ const running = datas.filter((d) => d.status === "running").length;
128399
+ const stopped = datas.filter((d) => d.status === "stopped").length;
128400
+ const failed = datas.filter((d) => d.status === "failed").length;
128401
+ const totalDevices = datas.reduce((sum, d) => sum + d.deviceCount, 0);
128402
+ const totalFabrics = datas.reduce(
128403
+ (sum, d) => sum + (d.commissioning?.fabrics?.length ?? 0),
128405
128404
  0
128406
128405
  );
128407
128406
  const lines = [
@@ -128459,8 +128458,9 @@ function metricsApi(bridgeService, haClient, haRegistry, startTime) {
128459
128458
  ""
128460
128459
  ];
128461
128460
  for (const bridge of bridges) {
128462
- const status3 = bridge.data.status === "running" ? 1 : 0;
128463
- const safeName = bridge.data.name.replace(/[^a-zA-Z0-9_]/g, "_");
128461
+ const data = bridge.data;
128462
+ const status3 = data.status === "running" ? 1 : 0;
128463
+ const safeName = data.name.replace(/[^a-zA-Z0-9_]/g, "_");
128464
128464
  lines.push(
128465
128465
  `# HELP hamh_bridge_status Bridge status (1=running, 0=not running)`,
128466
128466
  `# TYPE hamh_bridge_status gauge`,
@@ -128468,7 +128468,7 @@ function metricsApi(bridgeService, haClient, haRegistry, startTime) {
128468
128468
  "",
128469
128469
  `# HELP hamh_bridge_devices Number of devices on bridge`,
128470
128470
  `# TYPE hamh_bridge_devices gauge`,
128471
- `hamh_bridge_devices{bridge_id="${bridge.id}",bridge_name="${safeName}"} ${bridge.data.deviceCount}`,
128471
+ `hamh_bridge_devices{bridge_id="${bridge.id}",bridge_name="${safeName}"} ${data.deviceCount}`,
128472
128472
  ""
128473
128473
  );
128474
128474
  }
@@ -147233,6 +147233,7 @@ init_esm7();
147233
147233
  import crypto4 from "node:crypto";
147234
147234
 
147235
147235
  // src/services/bridges/bridge-data-provider.ts
147236
+ init_dist();
147236
147237
  init_service();
147237
147238
  import { values as values2 } from "lodash-es";
147238
147239
  var BridgeDataProvider = class extends Service {
@@ -147289,8 +147290,13 @@ var BridgeDataProvider = class extends Service {
147289
147290
  /**
147290
147291
  * @deprecated
147291
147292
  */
147292
- withMetadata(status3, serverNode, deviceCount, failedEntities = []) {
147293
+ withMetadata(status3, serverNode, deviceCount, failedEntities = [], exposedDeviceTypes = []) {
147293
147294
  const commissioning = serverNode.state.commissioning;
147295
+ const fabrics = commissioning ? values2(commissioning.fabrics) : [];
147296
+ const controllerWarnings = controllerWarningsForFabrics(
147297
+ fabrics,
147298
+ exposedDeviceTypes
147299
+ );
147294
147300
  return {
147295
147301
  id: this.id,
147296
147302
  name: this.name,
@@ -147311,7 +147317,7 @@ var BridgeDataProvider = class extends Service {
147311
147317
  discriminator: commissioning.discriminator,
147312
147318
  manualPairingCode: commissioning.pairingCodes.manualPairingCode,
147313
147319
  qrPairingCode: commissioning.pairingCodes.qrPairingCode,
147314
- fabrics: values2(commissioning.fabrics).map((fabric) => ({
147320
+ fabrics: fabrics.map((fabric) => ({
147315
147321
  fabricIndex: fabric.fabricIndex,
147316
147322
  fabricId: Number(fabric.fabricId),
147317
147323
  nodeId: Number(fabric.nodeId),
@@ -147321,7 +147327,8 @@ var BridgeDataProvider = class extends Service {
147321
147327
  }))
147322
147328
  } : void 0,
147323
147329
  deviceCount,
147324
- failedEntities: failedEntities.length > 0 ? failedEntities : void 0
147330
+ failedEntities: failedEntities.length > 0 ? failedEntities : void 0,
147331
+ controllerWarnings: controllerWarnings.length > 0 ? controllerWarnings : void 0
147325
147332
  };
147326
147333
  }
147327
147334
  };
@@ -148500,7 +148507,8 @@ var Bridge = class {
148500
148507
  this.status,
148501
148508
  this.server,
148502
148509
  this.aggregator.parts.size,
148503
- this.endpointManager.failedEntities
148510
+ this.endpointManager.failedEntities,
148511
+ this.getExposedDeviceTypes()
148504
148512
  );
148505
148513
  }
148506
148514
  getSessionInfo() {
@@ -164427,7 +164435,8 @@ var ServerModeBridge = class {
164427
164435
  this.status,
164428
164436
  this.server,
164429
164437
  this.endpointManager.devices.length,
164430
- this.endpointManager.failedEntities
164438
+ this.endpointManager.failedEntities,
164439
+ this.getExposedDeviceTypes()
164431
164440
  );
164432
164441
  }
164433
164442
  /**