From 27b48573eaba351a428398ae0d363912e5a24b10 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Sun, 3 Apr 2022 05:58:48 +0200 Subject: [PATCH] Add EntityFeature enum to Remote (#69120) --- homeassistant/components/remote/__init__.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/homeassistant/components/remote/__init__.py b/homeassistant/components/remote/__init__.py index 8b06827f0d9..1a739a2a476 100644 --- a/homeassistant/components/remote/__init__.py +++ b/homeassistant/components/remote/__init__.py @@ -4,6 +4,7 @@ from __future__ import annotations from collections.abc import Iterable from dataclasses import dataclass from datetime import timedelta +from enum import IntEnum import functools as ft import logging from typing import Any, cast, final @@ -61,6 +62,17 @@ DEFAULT_NUM_REPEATS = 1 DEFAULT_DELAY_SECS = 0.4 DEFAULT_HOLD_SECS = 0 + +class RemoteEntityFeature(IntEnum): + """Supported features of the remote entity.""" + + LEARN_COMMAND = 1 + DELETE_COMMAND = 2 + ACTIVITY = 4 + + +# These SUPPORT_* constants are deprecated as of Home Assistant 2022.5. +# Please use the RemoteEntityFeature enum instead. SUPPORT_LEARN_COMMAND = 1 SUPPORT_DELETE_COMMAND = 2 SUPPORT_ACTIVITY = 4 @@ -175,7 +187,7 @@ class RemoteEntity(ToggleEntity): @property def state_attributes(self) -> dict[str, Any] | None: """Return optional state attributes.""" - if not self.supported_features & SUPPORT_ACTIVITY: + if not self.supported_features & RemoteEntityFeature.ACTIVITY: return None return {