Home Assistant Unofficial Reference 2024.12.1
diagnostics.py
Go to the documentation of this file.
1 """Diagnostics support for WLED."""
2 
3 from __future__ import annotations
4 
5 from typing import Any
6 
7 from homeassistant.components.diagnostics import async_redact_data
8 from homeassistant.core import HomeAssistant
9 
10 from . import WLEDConfigEntry
11 
12 
14  hass: HomeAssistant, entry: WLEDConfigEntry
15 ) -> dict[str, Any]:
16  """Return diagnostics for a config entry."""
17  coordinator = entry.runtime_data
18 
19  data: dict[str, Any] = {
20  "info": async_redact_data(coordinator.data.info.to_dict(), "wifi"),
21  "state": coordinator.data.state.to_dict(),
22  "effects": {
23  effect.effect_id: effect.name
24  for effect in coordinator.data.effects.values()
25  },
26  "palettes": {
27  palette.palette_id: palette.name
28  for palette in coordinator.data.palettes.values()
29  },
30  "playlists": {
31  playlist.playlist_id: playlist.name
32  for playlist in coordinator.data.playlists.values()
33  },
34  "presets": {
35  preset.preset_id: preset.name
36  for preset in coordinator.data.presets.values()
37  },
38  }
39  return data
dict async_redact_data(Mapping data, Iterable[Any] to_redact)
Definition: util.py:14
dict[str, Any] async_get_config_entry_diagnostics(HomeAssistant hass, WLEDConfigEntry entry)
Definition: diagnostics.py:15