3 from __future__
import annotations
8 from .const
import _LOGGER, DOMAIN
13 """Remove extra entities that are no longer part of the integration."""
14 entity_registry = er.async_get(hass)
15 isy_data = hass.data[DOMAIN][entry_id]
17 existing_entries = er.async_entries_for_config_entry(entity_registry, entry_id)
19 (entity.domain, entity.unique_id): entity.entity_id
20 for entity
in existing_entries
23 extra_entities = set(entities.keys()).difference(isy_data.unique_ids)
24 if not extra_entities:
27 for entity
in extra_entities:
28 if entity_registry.async_is_registered(entities[entity]):
29 entity_registry.async_remove(entities[entity])
32 (
"Cleaning up ISY entities: removed %s extra entities for config entry %s"),
None _async_cleanup_registry_entries(HomeAssistant hass, str entry_id)