From 21100621c8d0eea912763483015e627058aeb6f4 Mon Sep 17 00:00:00 2001 From: Paul Bottein Date: Tue, 4 Apr 2023 12:39:03 +0200 Subject: [PATCH] Fan and alarm tile features (#26851) --- source/_dashboards/tile.markdown | 53 ++++++++++++++++++ .../dashboards/tile-features/alarm_modes.png | Bin 0 -> 8628 bytes .../dashboards/tile-features/fan_speed.png | Bin 0 -> 8793 bytes 3 files changed, 53 insertions(+) create mode 100644 source/images/dashboards/tile-features/alarm_modes.png create mode 100644 source/images/dashboards/tile-features/fan_speed.png diff --git a/source/_dashboards/tile.markdown b/source/_dashboards/tile.markdown index 20d2711589e..72faf40b814 100644 --- a/source/_dashboards/tile.markdown +++ b/source/_dashboards/tile.markdown @@ -106,6 +106,38 @@ Some color tokens are available to colorize the tile card : `primary`, `accent`, Some entities have support for "features". These widgets add quick controls to the tile card. +### Alarm modes + +Widget that display buttons to arm and disarm an [alarm](/integrations/alarm_control_panel). + +

+ Screenshot of the tile card with alarm modes feature + Screenshot of the tile card with alarm modes feature +

+ +```yaml +features: + - type: "alarm-modes" + modes: + - armed_home + - armed_away + - armed_night + - armed_vacation + - armed_custom_bypass + - disarmed +``` + +{% configuration %} +type: + required: true + description: "`alarm-modes`" + type: string +modes: + required: true + description: List of modes to show on the card. The list can contain `armed_home`, `armed_away`, `armed_night`, `armed_vacation`, `armed_custom_bypass` and `disarmed`. + type: list +{% endconfiguration %} + ### Cover open/close Widget that display buttons to open, close or stop a [cover](/integrations/cover). @@ -148,6 +180,27 @@ type: type: string {% endconfiguration %} +### Fan speed + +Widget that display speed controls for a [fan](/integrations/fan). + +

+ Screenshot of the tile card with fan speed feature + Screenshot of the tile card with fan speed feature +

+ +```yaml +features: + - type: "fan-speed" +``` + +{% configuration %} +type: + required: true + description: "`fan-speed`" + type: string +{% endconfiguration %} + ### Light brightness Widget that display a slider to select the brightness for a [light](/integrations/light). diff --git a/source/images/dashboards/tile-features/alarm_modes.png b/source/images/dashboards/tile-features/alarm_modes.png new file mode 100644 index 0000000000000000000000000000000000000000..229cca40b6a0475d0cb274f1087ba1fd94f8cb25 GIT binary patch literal 8628 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