forked from home-assistant/core
Add accept keyword to Media selector
This commit is contained in:
@@ -1020,11 +1020,15 @@ class MediaSelector(Selector[MediaSelectorConfig]):
|
||||
|
||||
selector_type = "media"
|
||||
|
||||
CONFIG_SCHEMA = BASE_SELECTOR_CONFIG_SCHEMA
|
||||
CONFIG_SCHEMA = BASE_SELECTOR_CONFIG_SCHEMA.extend(
|
||||
{
|
||||
vol.Optional("accept"): [str],
|
||||
}
|
||||
)
|
||||
DATA_SCHEMA = vol.Schema(
|
||||
{
|
||||
# Although marked as optional in frontend, this field is required
|
||||
vol.Required("entity_id"): cv.entity_id_or_uuid,
|
||||
# If accept is set, the entity_id field will not be present
|
||||
vol.Optional("entity_id"): cv.entity_id_or_uuid,
|
||||
# Although marked as optional in frontend, this field is required
|
||||
vol.Required("media_content_id"): str,
|
||||
# Although marked as optional in frontend, this field is required
|
||||
|
@@ -817,6 +817,23 @@ def test_theme_selector_schema(schema, valid_selections, invalid_selections) ->
|
||||
),
|
||||
(None, "abc", {}),
|
||||
),
|
||||
(
|
||||
{
|
||||
"accept": ["image/*"],
|
||||
},
|
||||
(
|
||||
{
|
||||
"media_content_id": "abc",
|
||||
"media_content_type": "def",
|
||||
},
|
||||
{
|
||||
"media_content_id": "abc",
|
||||
"media_content_type": "def",
|
||||
"metadata": {},
|
||||
},
|
||||
),
|
||||
(None, "abc", {}),
|
||||
),
|
||||
],
|
||||
)
|
||||
def test_media_selector_schema(schema, valid_selections, invalid_selections) -> None:
|
||||
|
Reference in New Issue
Block a user