Fix KNX cover schema for voluptuous 0.14.2 (#111427)

pull/111433/head
Matthias Alphart 2024-02-26 00:26:32 +01:00 committed by GitHub
parent c3d3fc7000
commit e984bdaf98
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 15 additions and 13 deletions

View File

@ -191,7 +191,7 @@ class KNXPlatformSchema(ABC):
"""Voluptuous schema for KNX platform entity configuration."""
PLATFORM: ClassVar[Platform | str]
ENTITY_SCHEMA: ClassVar[vol.Schema]
ENTITY_SCHEMA: ClassVar[vol.Schema | vol.All | vol.Any]
@classmethod
def platform_node(cls) -> dict[vol.Optional, vol.All]:
@ -445,18 +445,6 @@ class CoverSchema(KNXPlatformSchema):
DEFAULT_NAME = "KNX Cover"
ENTITY_SCHEMA = vol.All(
vol.Schema(
{
vol.Required(
vol.Any(CONF_MOVE_LONG_ADDRESS, CONF_POSITION_ADDRESS),
msg=(
f"At least one of '{CONF_MOVE_LONG_ADDRESS}' or"
f" '{CONF_POSITION_ADDRESS}' is required."
),
): object,
},
extra=vol.ALLOW_EXTRA,
),
vol.Schema(
{
vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
@ -480,6 +468,20 @@ class CoverSchema(KNXPlatformSchema):
vol.Optional(CONF_ENTITY_CATEGORY): ENTITY_CATEGORIES_SCHEMA,
}
),
vol.Any(
vol.Schema(
{vol.Required(CONF_MOVE_LONG_ADDRESS): object},
extra=vol.ALLOW_EXTRA,
),
vol.Schema(
{vol.Required(CONF_POSITION_ADDRESS): object},
extra=vol.ALLOW_EXTRA,
),
msg=(
f"At least one of '{CONF_MOVE_LONG_ADDRESS}' or"
f" '{CONF_POSITION_ADDRESS}' is required."
),
),
)