mirror of
https://github.com/home-assistant/core.git
synced 2025-07-16 17:57:11 +00:00
Ensure all default MQTT subentry option values are saved (#144347)
* Ensure all default MQTT subentry option values are saved * Apply correct filter
This commit is contained in:
parent
a673bd7a91
commit
da7e9f3ab6
@ -1490,8 +1490,11 @@ def subentry_schema_default_data_from_fields(
|
|||||||
return {
|
return {
|
||||||
key: field.default
|
key: field.default
|
||||||
for key, field in data_schema_fields.items()
|
for key, field in data_schema_fields.items()
|
||||||
if field.is_schema_default
|
if _check_conditions(field, component_data)
|
||||||
or (field.default is not vol.UNDEFINED and key not in component_data)
|
and (
|
||||||
|
field.is_schema_default
|
||||||
|
or (field.default is not vol.UNDEFINED and key not in component_data)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -2317,7 +2320,10 @@ class MQTTSubentryFlowHandler(ConfigSubentryFlow):
|
|||||||
for component_data in self._subentry_data["components"].values():
|
for component_data in self._subentry_data["components"].values():
|
||||||
platform = component_data[CONF_PLATFORM]
|
platform = component_data[CONF_PLATFORM]
|
||||||
subentry_default_data = subentry_schema_default_data_from_fields(
|
subentry_default_data = subentry_schema_default_data_from_fields(
|
||||||
PLATFORM_ENTITY_FIELDS[platform] | COMMON_ENTITY_FIELDS, component_data
|
COMMON_ENTITY_FIELDS
|
||||||
|
| PLATFORM_ENTITY_FIELDS[platform]
|
||||||
|
| PLATFORM_MQTT_FIELDS[platform],
|
||||||
|
component_data,
|
||||||
)
|
)
|
||||||
component_data.update(subentry_default_data)
|
component_data.update(subentry_default_data)
|
||||||
|
|
||||||
|
@ -179,6 +179,10 @@ MOCK_SUBENTRY_LIGHT_BASIC_KELVIN_COMPONENT = {
|
|||||||
"state_topic": "test-topic",
|
"state_topic": "test-topic",
|
||||||
"color_temp_kelvin": True,
|
"color_temp_kelvin": True,
|
||||||
"state_value_template": "{{ value_json.value }}",
|
"state_value_template": "{{ value_json.value }}",
|
||||||
|
"brightness_scale": 255,
|
||||||
|
"max_kelvin": 6535,
|
||||||
|
"min_kelvin": 2000,
|
||||||
|
"white_scale": 255,
|
||||||
"entity_picture": "https://example.com/8131babc5e8d4f44b82e0761d39091a2",
|
"entity_picture": "https://example.com/8131babc5e8d4f44b82e0761d39091a2",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user