diff --git a/src/data/selector.ts b/src/data/selector.ts index 695ad9fe83..ba422c6833 100644 --- a/src/data/selector.ts +++ b/src/data/selector.ts @@ -170,6 +170,7 @@ interface DeviceSelectorFilter { integration?: string; manufacturer?: string; model?: string; + model_id?: string; } export interface DeviceSelector { @@ -721,6 +722,7 @@ export const filterSelectorDevices = ( const { manufacturer: filterManufacturer, model: filterModel, + model_id: filterModelId, integration: filterIntegration, } = filterDevice; @@ -732,6 +734,10 @@ export const filterSelectorDevices = ( return false; } + if (filterModelId && device.model_id !== filterModelId) { + return false; + } + if (filterIntegration && deviceIntegrationLookup) { if (!deviceIntegrationLookup?.[device.id]?.has(filterIntegration)) { return false;