From 7050453783fc65557adb57f76a6f29d8423f33bc Mon Sep 17 00:00:00 2001 From: Bram Kragten Date: Fri, 16 Feb 2024 17:13:43 +0100 Subject: [PATCH] Check active matter fabric by index (#19692) Check active fabric by id --- src/data/matter.ts | 1 + .../matter/dialog-matter-manage-fabrics.ts | 10 ++++++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/data/matter.ts b/src/data/matter.ts index 5b4009178d..d6c4de87a0 100644 --- a/src/data/matter.ts +++ b/src/data/matter.ts @@ -35,6 +35,7 @@ export interface MatterNodeDiagnostics { mac_address?: string; available: boolean; active_fabrics: MatterFabricData[]; + active_fabric_index: number; } export interface MatterPingResult { diff --git a/src/panels/config/integrations/integration-panels/matter/dialog-matter-manage-fabrics.ts b/src/panels/config/integrations/integration-panels/matter/dialog-matter-manage-fabrics.ts index f10c634be9..21cf8ed491 100644 --- a/src/panels/config/integrations/integration-panels/matter/dialog-matter-manage-fabrics.ts +++ b/src/panels/config/integrations/integration-panels/matter/dialog-matter-manage-fabrics.ts @@ -20,8 +20,6 @@ import { haStyleDialog } from "../../../../../resources/styles"; import { HomeAssistant } from "../../../../../types"; import { MatterManageFabricsDialogParams } from "./show-dialog-matter-manage-fabrics"; -const NABUCASA_FABRIC = 4939; - @customElement("dialog-matter-manage-fabrics") class DialogMatterManageFabrics extends LitElement { @property({ attribute: false }) public hass!: HomeAssistant; @@ -61,8 +59,9 @@ class DialogMatterManageFabrics extends LitElement { (fabric) => html`${fabric.vendor_name || fabric.fabric_label || fabric.vendor_id} @@ -99,6 +98,9 @@ class DialogMatterManageFabrics extends LitElement { private async _removeFabric(ev) { const fabric: MatterFabricData = ev.target.fabric; + if (this._nodeDiagnostics!.active_fabric_index === fabric.fabric_index) { + return; + } const fabricName = fabric.vendor_name || fabric.fabric_label || fabric.vendor_id.toString(); const confirm = await showConfirmationDialog(this, {