[components] Set referenced components with cg.add_variable and register_parented (m-z) (#21023)

Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com>
This commit is contained in:
J. Nick Koston
2026-10-18 13:32:06 +00:00
committed by GitHub
co-authored by Jonathan Swoboda
parent 22a36de4ae
commit a801e414a0
75 changed files with 138 additions and 248 deletions
@@ -85,8 +85,7 @@ FINAL_VALIDATE_SCHEMA = cv.All(
async def register_mitsubishi_cn105_device(var: MockObj, config: ConfigType) -> None:
parent = await cg.get_variable(config[CONF_MITSUBISHI_CN105_ID])
cg.add(var.set_parent(parent))
await cg.register_parented(var, config[CONF_MITSUBISHI_CN105_ID])
async def to_code(config: ConfigType) -> None:
+1 -2
View File
@@ -382,8 +382,7 @@ def final_validate_modbus_device(
async def register_modbus_client_device(var: MockObj, config: ConfigType) -> None:
parent = await cg.get_variable(config[CONF_MODBUS_ID])
cg.add(var.set_parent(parent))
await cg.register_parented(var, config[CONF_MODBUS_ID])
cg.add(var.set_address(config[CONF_ADDRESS]))
+1 -2
View File
@@ -21,5 +21,4 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_OUTPUT_ID])
await light.register_light(var, config)
out = await cg.get_variable(config[CONF_OUTPUT])
cg.add(var.set_output(out))
await cg.add_variable(var.set_output, config[CONF_OUTPUT])
@@ -33,7 +33,6 @@ async def to_code(config: ConfigType) -> None:
var = await sensor.new_sensor(config)
await cg.register_component(var, config)
parent = await cg.get_variable(config[CONF_MQTT_PARENT_ID])
cg.add(var.set_parent(parent))
await cg.register_parented(var, config[CONF_MQTT_PARENT_ID])
cg.add(var.set_topic(config[CONF_TOPIC]))
cg.add(var.set_qos(config[CONF_QOS]))
@@ -31,7 +31,6 @@ async def to_code(config: ConfigType) -> None:
var = await text_sensor.new_text_sensor(config)
await cg.register_component(var, config)
parent = await cg.get_variable(config[CONF_MQTT_PARENT_ID])
cg.add(var.set_parent(parent))
await cg.register_parented(var, config[CONF_MQTT_PARENT_ID])
cg.add(var.set_topic(config[CONF_TOPIC]))
cg.add(var.set_qos(config[CONF_QOS]))
+1 -2
View File
@@ -24,6 +24,5 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_ID])
await output.register_output(var, config)
parent = await cg.get_variable(config[CONF_MY9231_ID])
cg.add(var.set_parent(parent))
await cg.register_parented(var, config[CONF_MY9231_ID])
cg.add(var.set_channel(config[CONF_CHANNEL]))
+8 -12
View File
@@ -116,21 +116,17 @@ async def setup_component_core_(var, config, arg):
)
)
if CONF_BACKGROUND_COLOR in config:
color_component = await cg.get_variable(config[CONF_BACKGROUND_COLOR])
cg.add(var.set_background_color(color_component))
await cg.add_variable(var.set_background_color, config.get(CONF_BACKGROUND_COLOR))
if CONF_BACKGROUND_PRESSED_COLOR in config:
color_component = await cg.get_variable(config[CONF_BACKGROUND_PRESSED_COLOR])
cg.add(var.set_background_pressed_color(color_component))
await cg.add_variable(
var.set_background_pressed_color, config.get(CONF_BACKGROUND_PRESSED_COLOR)
)
if CONF_FOREGROUND_COLOR in config:
color_component = await cg.get_variable(config[CONF_FOREGROUND_COLOR])
cg.add(var.set_foreground_color(color_component))
await cg.add_variable(var.set_foreground_color, config.get(CONF_FOREGROUND_COLOR))
if CONF_FOREGROUND_PRESSED_COLOR in config:
color_component = await cg.get_variable(config[CONF_FOREGROUND_PRESSED_COLOR])
cg.add(var.set_foreground_pressed_color(color_component))
await cg.add_variable(
var.set_foreground_pressed_color, config.get(CONF_FOREGROUND_PRESSED_COLOR)
)
if CONF_FONT_ID in config:
cg.add(var.set_font_id(config[CONF_FONT_ID]))
+1 -2
View File
@@ -138,8 +138,7 @@ async def to_code(config: ConfigType) -> None:
var = await sensor.new_sensor(config)
await cg.register_component(var, config)
sens = await cg.get_variable(config[CONF_SENSOR])
cg.add(var.set_sensor(sens))
await cg.add_variable(var.set_sensor, config[CONF_SENSOR])
calib = config[CONF_CALIBRATION]
cg.add(var.set_a(calib[CONF_A]))
cg.add(var.set_b(calib[CONF_B]))
+1 -2
View File
@@ -37,8 +37,7 @@ async def register_one_wire_device(var: MockObj, config: ConfigType) -> None:
This is a coroutine, you need to await it with an 'await' expression!
"""
parent = await cg.get_variable(config[CONF_ONE_WIRE_ID])
cg.add(var.set_one_wire_bus(parent))
await cg.add_variable(var.set_one_wire_bus, config[CONF_ONE_WIRE_ID])
if (address := config.get(CONF_ADDRESS)) is not None:
cg.add(var.set_address(address))
if (index := config.get(CONF_INDEX)) is not None:
+3 -2
View File
@@ -103,8 +103,9 @@ async def to_code(config: dict[str, Any]) -> None:
if key in non_sensors:
continue
if key in schema.INPUTS:
input_sensor = await cg.get_variable(value)
cg.add(getattr(var, f"set_{key}_{const.INPUT_SENSOR}")(input_sensor))
await cg.add_variable(
getattr(var, f"set_{key}_{const.INPUT_SENSOR}"), value
)
input_sensors.append(key)
elif key in schema.SETTINGS:
if value == schema.SETTINGS[key].default_value:
+1 -3
View File
@@ -59,9 +59,7 @@ FloatOutputPtr = FloatOutput.operator("ptr")
async def setup_output_platform_(obj, config):
if CONF_INVERTED in config:
cg.add(obj.set_inverted(config[CONF_INVERTED]))
if CONF_POWER_SUPPLY in config:
power_supply_ = await cg.get_variable(config[CONF_POWER_SUPPLY])
cg.add(obj.set_power_supply(power_supply_))
await cg.add_variable(obj.set_power_supply, config.get(CONF_POWER_SUPPLY))
# The C++ initializers are max_power 1.0 and min_power 0.0; skip the setter when
# the config matches them. The define stays whenever the key is present because
# platforms such as ac_dimmer read the scaling fields directly.
+1 -2
View File
@@ -23,8 +23,7 @@ async def to_code(config):
var = cg.new_Pvariable(config[CONF_ID])
cg.add(var.set_duration(config[CONF_DURATION]))
output_ = await cg.get_variable(config[CONF_OUTPUT])
cg.add(var.set_output(output_))
await cg.add_variable(var.set_output, config[CONF_OUTPUT])
await cg.register_component(var, config)
await button.register_button(var, config)
+1 -2
View File
@@ -22,5 +22,4 @@ async def to_code(config):
var = await lock.new_lock(config)
await cg.register_component(var, config)
output_ = await cg.get_variable(config[CONF_OUTPUT])
cg.add(var.set_output(output_))
await cg.add_variable(var.set_output, config[CONF_OUTPUT])
+1 -2
View File
@@ -25,5 +25,4 @@ async def to_code(config):
var = await switch.new_switch(config)
await cg.register_component(var, config)
output_ = await cg.get_variable(config[CONF_OUTPUT])
cg.add(var.set_output(output_))
await cg.add_variable(var.set_output, config[CONF_OUTPUT])
+4 -13
View File
@@ -100,19 +100,10 @@ async def to_code(config: ConfigType) -> None:
var = await climate.new_climate(config)
await cg.register_component(var, config)
sens = await cg.get_variable(config[CONF_SENSOR])
cg.add(var.set_sensor(sens))
if CONF_HUMIDITY_SENSOR in config:
sens = await cg.get_variable(config[CONF_HUMIDITY_SENSOR])
cg.add(var.set_humidity_sensor(sens))
if CONF_COOL_OUTPUT in config:
out = await cg.get_variable(config[CONF_COOL_OUTPUT])
cg.add(var.set_cool_output(out))
if CONF_HEAT_OUTPUT in config:
out = await cg.get_variable(config[CONF_HEAT_OUTPUT])
cg.add(var.set_heat_output(out))
await cg.add_variable(var.set_sensor, config[CONF_SENSOR])
await cg.add_variable(var.set_humidity_sensor, config.get(CONF_HUMIDITY_SENSOR))
await cg.add_variable(var.set_cool_output, config.get(CONF_COOL_OUTPUT))
await cg.add_variable(var.set_heat_output, config.get(CONF_HEAT_OUTPUT))
params = config[CONF_CONTROL_PARAMETERS]
cg.add(var.set_kp(params[CONF_KP]))
cg.add(var.set_ki(params[CONF_KI]))
@@ -44,8 +44,6 @@ async def to_code(config: ConfigType) -> None:
cg.add(var.set_auto_clear(config[CONF_AUTO_CLEAR_ENABLED]))
cg.add(var.set_validity_period(config[CONF_VALIDITY_PERIOD].total_seconds))
if CONF_TIME_ID in config:
time_ = await cg.get_variable(config[CONF_TIME_ID])
cg.add(var.set_time(time_))
await cg.add_variable(var.set_time, config.get(CONF_TIME_ID))
await display.add_writer(var, config, PVVXDisplayRef)
+1 -2
View File
@@ -154,8 +154,7 @@ async def attach_receiver(
async def register_transmittable(var, config, key: str = CONF_TRANSMITTER_ID):
transmitter_ = await cg.get_variable(config[key])
cg.add(var.set_transmitter(transmitter_))
await cg.add_variable(var.set_transmitter, config[key])
# Registry names that share a protocol source file
@@ -86,8 +86,7 @@ async def to_code(config: ConfigType) -> None:
await cg.register_component(var, config)
await speaker.register_speaker(var, config)
output_spkr = await cg.get_variable(config[CONF_OUTPUT_SPEAKER])
cg.add(var.set_output_speaker(output_spkr))
await cg.add_variable(var.set_output_speaker, config[CONF_OUTPUT_SPEAKER])
cg.add(var.set_buffer_duration(config[CONF_BUFFER_DURATION]))
+1 -2
View File
@@ -43,8 +43,7 @@ async def to_code(config: ConfigType) -> None:
var = await sensor.new_sensor(config)
await cg.register_component(var, config)
sens = await cg.get_variable(config[CONF_SENSOR])
cg.add(var.set_sensor(sens))
await cg.add_variable(var.set_sensor, config[CONF_SENSOR])
cg.add(var.set_configuration(config[CONF_CONFIGURATION]))
cg.add(var.set_resistor(config[CONF_RESISTOR]))
cg.add(var.set_reference_voltage(config[CONF_REFERENCE_VOLTAGE]))
+3 -6
View File
@@ -21,9 +21,6 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_OUTPUT_ID])
await light.register_light(var, config)
red = await cg.get_variable(config[CONF_RED])
cg.add(var.set_red(red))
green = await cg.get_variable(config[CONF_GREEN])
cg.add(var.set_green(green))
blue = await cg.get_variable(config[CONF_BLUE])
cg.add(var.set_blue(blue))
await cg.add_variable(var.set_red, config[CONF_RED])
await cg.add_variable(var.set_green, config[CONF_GREEN])
await cg.add_variable(var.set_blue, config[CONF_BLUE])
+5 -11
View File
@@ -42,17 +42,11 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_OUTPUT_ID])
await light.register_light(var, config)
red = await cg.get_variable(config[CONF_RED])
cg.add(var.set_red(red))
green = await cg.get_variable(config[CONF_GREEN])
cg.add(var.set_green(green))
blue = await cg.get_variable(config[CONF_BLUE])
cg.add(var.set_blue(blue))
color_temp = await cg.get_variable(config[CONF_COLOR_TEMPERATURE])
cg.add(var.set_color_temperature(color_temp))
white_brightness = await cg.get_variable(config[CONF_WHITE_BRIGHTNESS])
cg.add(var.set_white_brightness(white_brightness))
await cg.add_variable(var.set_red, config[CONF_RED])
await cg.add_variable(var.set_green, config[CONF_GREEN])
await cg.add_variable(var.set_blue, config[CONF_BLUE])
await cg.add_variable(var.set_color_temperature, config[CONF_COLOR_TEMPERATURE])
await cg.add_variable(var.set_white_brightness, config[CONF_WHITE_BRIGHTNESS])
cg.add(var.set_cold_white_temperature(config[CONF_COLD_WHITE_COLOR_TEMPERATURE]))
cg.add(var.set_warm_white_temperature(config[CONF_WARM_WHITE_COLOR_TEMPERATURE]))
+4 -8
View File
@@ -30,12 +30,8 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_OUTPUT_ID])
await light.register_light(var, config)
red = await cg.get_variable(config[CONF_RED])
cg.add(var.set_red(red))
green = await cg.get_variable(config[CONF_GREEN])
cg.add(var.set_green(green))
blue = await cg.get_variable(config[CONF_BLUE])
cg.add(var.set_blue(blue))
white = await cg.get_variable(config[CONF_WHITE])
cg.add(var.set_white(white))
await cg.add_variable(var.set_red, config[CONF_RED])
await cg.add_variable(var.set_green, config[CONF_GREEN])
await cg.add_variable(var.set_blue, config[CONF_BLUE])
await cg.add_variable(var.set_white, config[CONF_WHITE])
cg.add(var.set_color_interlock(config[CONF_COLOR_INTERLOCK]))
+5 -11
View File
@@ -45,22 +45,16 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_OUTPUT_ID])
await light.register_light(var, config)
red = await cg.get_variable(config[CONF_RED])
cg.add(var.set_red(red))
green = await cg.get_variable(config[CONF_GREEN])
cg.add(var.set_green(green))
blue = await cg.get_variable(config[CONF_BLUE])
cg.add(var.set_blue(blue))
cwhite = await cg.get_variable(config[CONF_COLD_WHITE])
cg.add(var.set_cold_white(cwhite))
await cg.add_variable(var.set_red, config[CONF_RED])
await cg.add_variable(var.set_green, config[CONF_GREEN])
await cg.add_variable(var.set_blue, config[CONF_BLUE])
await cg.add_variable(var.set_cold_white, config[CONF_COLD_WHITE])
if CONF_COLD_WHITE_COLOR_TEMPERATURE in config:
cg.add(
var.set_cold_white_temperature(config[CONF_COLD_WHITE_COLOR_TEMPERATURE])
)
wwhite = await cg.get_variable(config[CONF_WARM_WHITE])
cg.add(var.set_warm_white(wwhite))
await cg.add_variable(var.set_warm_white, config[CONF_WARM_WHITE])
if CONF_WARM_WHITE_COLOR_TEMPERATURE in config:
cg.add(
var.set_warm_white_temperature(config[CONF_WARM_WHITE_COLOR_TEMPERATURE])
@@ -86,8 +86,7 @@ async def to_code(config: ConfigType) -> None:
speakers = config[CONF_OUTPUT_SPEAKERS]
cg.add(var.set_output_count(len(speakers)))
for spk_id in speakers:
spk = await cg.get_variable(spk_id)
cg.add(var.add_output(spk))
await cg.add_variable(var.add_output, spk_id)
automation.register_apply_action(
@@ -95,8 +95,7 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_ID])
await cg.register_component(var, config)
parent = await cg.get_variable(config[CONF_RP2040_BLE_ID])
cg.add(var.set_parent(parent))
await cg.register_parented(var, config[CONF_RP2040_BLE_ID])
# The tracker registers itself as a controller scan listener in setup();
# request the codegen-sized StaticVector slot for it.
rp2040_ble.request_scan_listener_slot()
+2 -5
View File
@@ -84,13 +84,10 @@ async def to_code(config: ConfigType) -> None:
await cg.register_component(var, config)
if CONF_OUTPUT in config:
out = await cg.get_variable(config[CONF_OUTPUT])
cg.add(var.set_output(out))
await cg.add_variable(var.set_output, config[CONF_OUTPUT])
cg.add_define("USE_OUTPUT")
if CONF_SPEAKER in config:
out = await cg.get_variable(config[CONF_SPEAKER])
cg.add(var.set_speaker(out))
await cg.add_variable(var.set_speaker, config.get(CONF_SPEAKER))
cg.add(var.set_gain(config[CONF_GAIN]))
@@ -31,5 +31,4 @@ async def to_code(config: ConfigType) -> None:
var = await button.new_button(config)
await cg.register_component(var, config)
safe_mode_component = await cg.get_variable(config[CONF_SAFE_MODE])
cg.add(var.set_safe_mode(safe_mode_component))
await cg.add_variable(var.set_safe_mode, config[CONF_SAFE_MODE])
@@ -26,5 +26,4 @@ async def to_code(config: ConfigType) -> None:
var = await switch.new_switch(config)
await cg.register_component(var, config)
safe_mode_component = await cg.get_variable(config[CONF_SAFE_MODE])
cg.add(var.set_safe_mode(safe_mode_component))
await cg.add_variable(var.set_safe_mode, config[CONF_SAFE_MODE])
+4 -3
View File
@@ -112,9 +112,10 @@ async def to_code(config: ConfigType) -> None:
sens = await sensor.new_sensor(config[key])
cg.add(getattr(var, funcName)(sens))
if CONF_AMBIENT_PRESSURE_COMPENSATION_SOURCE in config:
sens = await cg.get_variable(config[CONF_AMBIENT_PRESSURE_COMPENSATION_SOURCE])
cg.add(var.set_ambient_pressure_source(sens))
await cg.add_variable(
var.set_ambient_pressure_source,
config.get(CONF_AMBIENT_PRESSURE_COMPENSATION_SOURCE),
)
cg.add(var.set_measurement_mode(config[CONF_MEASUREMENT_MODE]))
+4 -5
View File
@@ -326,11 +326,10 @@ async def to_code(config: ConfigType) -> None:
cg.add(var.set_altitude_compensation(altitude))
if (pressure := co2_cfg.get(CONF_AMBIENT_PRESSURE_COMPENSATION)) is not None:
cg.add(var.set_ambient_pressure_compensation(pressure))
if (
source := co2_cfg.get(CONF_AMBIENT_PRESSURE_COMPENSATION_SOURCE)
) is not None:
sens = await cg.get_variable(source)
cg.add(var.set_ambient_pressure_source(sens))
await cg.add_variable(
var.set_ambient_pressure_source,
co2_cfg.get(CONF_AMBIENT_PRESSURE_COMPENSATION_SOURCE),
)
SEN6X_ACTION_SCHEMA = maybe_simple_id(
+1 -2
View File
@@ -428,8 +428,7 @@ async def to_code(config: ConfigType) -> None:
# Service starts disabled and the hub enables it; always advertised where unsupported
if mdns.request_service_enable_disable():
mdns_var = await cg.get_variable(CORE.config[MDNS_DOMAIN][CONF_ID])
cg.add(var.set_mdns(mdns_var))
await cg.add_variable(var.set_mdns, CORE.config[MDNS_DOMAIN][CONF_ID])
data = _get_data()
+2 -4
View File
@@ -101,12 +101,10 @@ async def to_code(config: ConfigType) -> None:
# port_type names the electrical interface (a USB RS485 adapter is RS485), so every
# usb_uart channel reports USB identity whatever port type it declares
if is_usb_uart_channel(config[CONF_UART_ID], CORE.config):
channel = await cg.get_variable(config[CONF_UART_ID])
cg.add(var.set_usb_channel(channel))
await cg.add_variable(var.set_usb_channel, config[CONF_UART_ID])
cg.add_define("USE_SERIAL_PROXY_USB_IDENTITY")
if uart.is_host_uart(config[CONF_UART_ID], CORE.config):
host_uart = await cg.get_variable(config[CONF_UART_ID])
cg.add(var.set_host_uart(host_uart))
await cg.add_variable(var.set_host_uart, config[CONF_UART_ID])
cg.add_define("USE_SERIAL_PROXY_HOST_UART")
cg.add_define("USE_SERIAL_PROXY")
+1 -2
View File
@@ -43,8 +43,7 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_ID])
await cg.register_component(var, config)
out = await cg.get_variable(config[CONF_OUTPUT])
cg.add(var.set_output(out))
await cg.add_variable(var.set_output, config[CONF_OUTPUT])
cg.add(var.set_min_level(config[CONF_MIN_LEVEL]))
cg.add(var.set_idle_level(config[CONF_IDLE_LEVEL]))
cg.add(var.set_max_level(config[CONF_MAX_LEVEL]))
+6 -4
View File
@@ -98,7 +98,9 @@ async def to_code(config: ConfigType) -> None:
cg.add(var.set_tvoc_baseline(baseline_config[CONF_TVOC_BASELINE]))
if compensation_config := config.get(CONF_COMPENSATION):
sens = await cg.get_variable(compensation_config[CONF_HUMIDITY_SOURCE])
cg.add(var.set_humidity_sensor(sens))
sens = await cg.get_variable(compensation_config[CONF_TEMPERATURE_SOURCE])
cg.add(var.set_temperature_sensor(sens))
await cg.add_variable(
var.set_humidity_sensor, compensation_config[CONF_HUMIDITY_SOURCE]
)
await cg.add_variable(
var.set_temperature_sensor, compensation_config[CONF_TEMPERATURE_SOURCE]
)
+6 -4
View File
@@ -103,10 +103,12 @@ async def to_code(config: ConfigType) -> None:
if CONF_COMPENSATION in config:
compensation_config = config[CONF_COMPENSATION]
sens = await cg.get_variable(compensation_config[CONF_HUMIDITY_SOURCE])
cg.add(var.set_humidity_sensor(sens))
sens = await cg.get_variable(compensation_config[CONF_TEMPERATURE_SOURCE])
cg.add(var.set_temperature_sensor(sens))
await cg.add_variable(
var.set_humidity_sensor, compensation_config[CONF_HUMIDITY_SOURCE]
)
await cg.add_variable(
var.set_temperature_sensor, compensation_config[CONF_TEMPERATURE_SOURCE]
)
cg.add(var.set_store_baseline(config[CONF_STORE_BASELINE]))
+1 -2
View File
@@ -24,6 +24,5 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_ID])
await output.register_output(var, config)
parent = await cg.get_variable(config[CONF_SM16716_ID])
cg.add(var.set_parent(parent))
await cg.register_parented(var, config[CONF_SM16716_ID])
cg.add(var.set_channel(config[CONF_CHANNEL]))
+1 -2
View File
@@ -25,6 +25,5 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_ID])
await output.register_output(var, config)
parent = await cg.get_variable(config[CONF_SM2135_ID])
cg.add(var.set_parent(parent))
await cg.register_parented(var, config[CONF_SM2135_ID])
cg.add(var.set_channel(config[CONF_CHANNEL]))
+1 -2
View File
@@ -25,6 +25,5 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_ID])
await output.register_output(var, config)
parent = await cg.get_variable(config[CONF_SM2235_ID])
cg.add(var.set_parent(parent))
await cg.register_parented(var, config[CONF_SM2235_ID])
cg.add(var.set_channel(config[CONF_CHANNEL]))
+1 -2
View File
@@ -25,6 +25,5 @@ async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_ID])
await output.register_output(var, config)
parent = await cg.get_variable(config[CONF_SM2335_ID])
cg.add(var.set_parent(parent))
await cg.register_parented(var, config[CONF_SM2335_ID])
cg.add(var.set_channel(config[CONF_CHANNEL]))
+1 -3
View File
@@ -22,9 +22,7 @@ PlayAction = speaker_ns.class_(
async def setup_speaker_core_(var, config):
if audio_dac_config := config.get(CONF_AUDIO_DAC):
aud_dac = await cg.get_variable(audio_dac_config)
cg.add(var.set_audio_dac(aud_dac))
await cg.add_variable(var.set_audio_dac, config.get(CONF_AUDIO_DAC))
async def register_speaker(var, config):
@@ -184,8 +184,9 @@ async def to_code(config):
cg.add(var.set_volume_min(config[CONF_VOLUME_MIN]))
announcement_pipeline_config = config[CONF_ANNOUNCEMENT_PIPELINE]
spkr = await cg.get_variable(announcement_pipeline_config[CONF_SPEAKER])
cg.add(var.set_announcement_speaker(spkr))
await cg.add_variable(
var.set_announcement_speaker, announcement_pipeline_config[CONF_SPEAKER]
)
if announcement_pipeline_config[CONF_FORMAT] != "NONE":
cg.add(
var.set_announcement_format(
@@ -196,8 +197,9 @@ async def to_code(config):
)
if media_pipeline_config := config.get(CONF_MEDIA_PIPELINE):
spkr = await cg.get_variable(media_pipeline_config[CONF_SPEAKER])
cg.add(var.set_media_speaker(spkr))
await cg.add_variable(
var.set_media_speaker, media_pipeline_config[CONF_SPEAKER]
)
if media_pipeline_config[CONF_FORMAT] != "NONE":
cg.add(
var.set_media_format(
+1 -2
View File
@@ -484,8 +484,7 @@ def spi_device_schema(
async def register_spi_device(
var: cg.MockObj, config: ConfigType, write_only: bool = False
) -> None:
parent = await cg.get_variable(config[CONF_SPI_ID])
cg.add(var.set_spi_parent(parent))
await cg.add_variable(var.set_spi_parent, config[CONF_SPI_ID])
if write_only:
cg.add(var.set_write_only(True))
await cg.add_pin(var.set_cs_pin, config.get(CONF_CS_PIN))
+1 -5
View File
@@ -733,8 +733,4 @@ async def to_code(config):
var = await cg.get_variable(sprinkler_controller[CONF_ID])
for controller_to_add in config:
if sprinkler_controller[CONF_ID] != controller_to_add[CONF_ID]:
cg.add(
var.add_controller(
await cg.get_variable(controller_to_add[CONF_ID])
)
)
await cg.add_variable(var.add_controller, controller_to_add[CONF_ID])
+8 -13
View File
@@ -107,13 +107,11 @@ async def to_code(config: ConfigType) -> None:
await sensors(CONF_TEMPERATURE, var.set_temperature_sensor)
await sensors(CONF_HUMIDITY, var.set_humidity_sensor)
if (temperature_source := config.get(CONF_TEMPERATURE_SOURCE)) is not None:
sens = await cg.get_variable(temperature_source)
cg.add(var.set_temperature_source(sens))
await cg.add_variable(
var.set_temperature_source, config.get(CONF_TEMPERATURE_SOURCE)
)
if (humidity_source := config.get(CONF_HUMIDITY_SOURCE)) is not None:
sens = await cg.get_variable(humidity_source)
cg.add(var.set_humidity_source(sens))
await cg.add_variable(var.set_humidity_source, config.get(CONF_HUMIDITY_SOURCE))
if (
ambient_pressure_compensation := config.get(CONF_AMBIENT_PRESSURE_COMPENSATION)
@@ -124,12 +122,9 @@ async def to_code(config: ConfigType) -> None:
)
)
if (
ambient_pressure_compensation_source := config.get(
CONF_AMBIENT_PRESSURE_COMPENSATION_SOURCE
)
) is not None:
sens = await cg.get_variable(ambient_pressure_compensation_source)
cg.add(var.set_ambient_pressure_source(sens))
await cg.add_variable(
var.set_ambient_pressure_source,
config.get(CONF_AMBIENT_PRESSURE_COMPENSATION_SOURCE),
)
cg.add(var.set_measurement_mode(config[CONF_MEASUREMENT_MODE]))
+1 -2
View File
@@ -118,8 +118,7 @@ CONFIG_SCHEMA = cv.Schema(
async def to_code(config: ConfigType) -> None:
var = cg.new_Pvariable(config[CONF_ID])
time_ = await cg.get_variable(config[CONF_TIME_ID])
cg.add(var.set_time(time_))
await cg.add_variable(var.set_time, config[CONF_TIME_ID])
cg.add(var.set_latitude(config[CONF_LATITUDE]))
cg.add(var.set_longitude(config[CONF_LONGITUDE]))
+1 -2
View File
@@ -40,5 +40,4 @@ async def to_code(config: ConfigType) -> None:
await cg.register_component(var, config)
cg.add(var.set_type(config[CONF_TYPE]))
paren = await cg.get_variable(config[CONF_SUN_ID])
cg.add(var.set_parent(paren))
await cg.register_parented(var, config[CONF_SUN_ID])
@@ -53,8 +53,7 @@ async def to_code(config: ConfigType) -> None:
var = await text_sensor.new_text_sensor(config)
await cg.register_component(var, config)
paren = await cg.get_variable(config[CONF_SUN_ID])
cg.add(var.set_parent(paren))
await cg.register_parented(var, config[CONF_SUN_ID])
cg.add(var.set_sunrise(SUN_TYPES[config[CONF_TYPE]]))
cg.add(var.set_elevation(config[CONF_ELEVATION]))
cg.add(var.set_format(config[CONF_FORMAT]))
@@ -27,5 +27,4 @@ async def to_code(config):
var = await binary_sensor.new_binary_sensor(config)
await cg.register_component(var, config)
source = await cg.get_variable(config[CONF_SOURCE_ID])
cg.add(var.set_source(source))
await cg.add_variable(var.set_source, config[CONF_SOURCE_ID])
@@ -23,5 +23,4 @@ CONFIG_SCHEMA = transport_schema(SX126xTransport).extend(
async def to_code(config: ConfigType) -> None:
var, _ = await new_packet_transport(config)
sx126x = await cg.get_variable(config[CONF_SX126X_ID])
cg.add(var.set_parent(sx126x))
await cg.register_parented(var, config[CONF_SX126X_ID])
@@ -23,5 +23,4 @@ CONFIG_SCHEMA = transport_schema(SX127xTransport).extend(
async def to_code(config: ConfigType) -> None:
var, _ = await new_packet_transport(config)
sx127x = await cg.get_variable(config[CONF_SX127X_ID])
cg.add(var.set_parent(sx127x))
await cg.register_parented(var, config[CONF_SX127X_ID])
+1 -3
View File
@@ -716,9 +716,7 @@ async def to_code(config: ConfigType) -> None:
)
cg.add(var.set_sensor(sens))
if CONF_HUMIDITY_SENSOR in config:
sens = await cg.get_variable(config[CONF_HUMIDITY_SENSOR])
cg.add(var.set_humidity_sensor(sens))
await cg.add_variable(var.set_humidity_sensor, config.get(CONF_HUMIDITY_SENSOR))
cg.add(var.set_cool_deadband(config[CONF_COOL_DEADBAND]))
cg.add(var.set_cool_overrun(config[CONF_COOL_OVERRUN]))
+1 -2
View File
@@ -23,5 +23,4 @@ async def to_code(config: ConfigType) -> None:
await output.register_output(var, config)
await cg.register_component(var, config)
cg.add(var.set_lednum(config[CONF_LED]))
hub = await cg.get_variable(config[CONF_TM1638_ID])
cg.add(var.set_tm1638(hub))
await cg.add_variable(var.set_tm1638, config[CONF_TM1638_ID])
+1 -2
View File
@@ -25,5 +25,4 @@ async def to_code(config: ConfigType) -> None:
var = await switch.new_switch(config)
await cg.register_component(var, config)
cg.add(var.set_lednum(config[CONF_LED]))
hub = await cg.get_variable(config[CONF_TM1638_ID])
cg.add(var.set_tm1638(hub))
await cg.add_variable(var.set_tm1638, config[CONF_TM1638_ID])
@@ -83,9 +83,7 @@ async def to_code(config: ConfigType) -> None:
var = await sensor.new_sensor(config)
await cg.register_component(var, config)
sens = await cg.get_variable(config[CONF_POWER_ID])
cg.add(var.set_parent(sens))
time_ = await cg.get_variable(config[CONF_TIME_ID])
cg.add(var.set_time(time_))
await cg.register_parented(var, config[CONF_POWER_ID])
await cg.add_variable(var.set_time, config[CONF_TIME_ID])
cg.add(var.set_restore(config[CONF_RESTORE]))
cg.add(var.set_method(config[CONF_METHOD]))
+1 -2
View File
@@ -155,8 +155,7 @@ TOUCHSCREEN_SCHEMA = touchscreen_schema(cv.UNDEFINED)
async def register_touchscreen(var: MockObj, config: ConfigType) -> None:
await cg.register_component(var, config)
disp = await cg.get_variable(config[CONF_DISPLAY])
cg.add(var.set_display(disp))
await cg.add_variable(var.set_display, config[CONF_DISPLAY])
if CONF_TOUCH_TIMEOUT in config:
cg.add(var.set_touch_timeout(config[CONF_TOUCH_TIMEOUT]))
@@ -83,5 +83,4 @@ async def to_code(config: ConfigType) -> None:
)
for page_id in config.get(CONF_PAGES, []):
page = await cg.get_variable(page_id)
cg.add(var.add_page(page))
await cg.add_variable(var.add_page, page_id)
+1 -2
View File
@@ -85,8 +85,7 @@ CONFIG_SCHEMA = cv.All(
async def to_code(config):
var = await uart.new_uart_component(config)
if (time_id := config.get(CONF_TIME_ID)) is not None:
time_ = await cg.get_variable(time_id)
cg.add(var.set_time_id(time_))
await cg.add_variable(var.set_time_id, time_id)
if config[CONF_FORCE_TIME_SYNC]:
cg.add(var.set_force_time_sync(True))
await cg.add_pin(var.set_status_pin, config.get(CONF_STATUS_PIN))
@@ -28,7 +28,6 @@ async def to_code(config):
var = await binary_sensor.new_binary_sensor(config)
await cg.register_component(var, config)
paren = await cg.get_variable(config[CONF_TUYA_ID])
cg.add(var.set_tuya_parent(paren))
await cg.add_variable(var.set_tuya_parent, config[CONF_TUYA_ID])
cg.add(var.set_sensor_id(config[CONF_SENSOR_DATAPOINT]))
+1 -2
View File
@@ -196,8 +196,7 @@ async def to_code(config):
var = await climate.new_climate(config)
await cg.register_component(var, config)
paren = await cg.get_variable(config[CONF_TUYA_ID])
cg.add(var.set_tuya_parent(paren))
await cg.add_variable(var.set_tuya_parent, config[CONF_TUYA_ID])
cg.add(var.set_supports_heat(config[CONF_SUPPORTS_HEAT]))
cg.add(var.set_supports_cool(config[CONF_SUPPORTS_COOL]))
+1 -2
View File
@@ -69,5 +69,4 @@ async def to_code(config):
cg.add(var.set_invert_position(config[CONF_INVERT_POSITION]))
cg.add(var.set_invert_position_report(config[CONF_INVERT_POSITION_REPORT]))
cg.add(var.set_restore_mode(config[CONF_RESTORE_MODE]))
paren = await cg.get_variable(config[CONF_TUYA_ID])
cg.add(var.set_tuya_parent(paren))
await cg.add_variable(var.set_tuya_parent, config[CONF_TUYA_ID])
+1 -2
View File
@@ -112,5 +112,4 @@ async def to_code(config):
)
cg.add(var.set_color_interlock(config[CONF_COLOR_INTERLOCK]))
paren = await cg.get_variable(config[CONF_TUYA_ID])
cg.add(var.set_tuya_parent(paren))
await cg.add_variable(var.set_tuya_parent, config[CONF_TUYA_ID])
+1 -2
View File
@@ -85,8 +85,7 @@ async def to_code(config):
)
cg.add(var.set_write_multiply(config[CONF_MULTIPLY]))
parent = await cg.get_variable(config[CONF_TUYA_ID])
cg.add(var.set_tuya_parent(parent))
await cg.add_variable(var.set_tuya_parent, config[CONF_TUYA_ID])
cg.add(var.set_number_id(config[CONF_NUMBER_DATAPOINT]))
if hidden_config := config.get(CONF_DATAPOINT_HIDDEN):
+1 -2
View File
@@ -52,8 +52,7 @@ async def to_code(config):
var = await select.new_select(config, options=list(options_map.values()))
await cg.register_component(var, config)
cg.add(var.set_select_mappings(list(options_map.keys())))
parent = await cg.get_variable(config[CONF_TUYA_ID])
cg.add(var.set_tuya_parent(parent))
await cg.add_variable(var.set_tuya_parent, config[CONF_TUYA_ID])
if (enum_datapoint := config.get(CONF_ENUM_DATAPOINT, None)) is not None:
cg.add(var.set_select_id(enum_datapoint, False))
if (int_datapoint := config.get(CONF_INT_DATAPOINT, None)) is not None:
+1 -2
View File
@@ -27,7 +27,6 @@ async def to_code(config):
await cg.register_component(var, config)
await sensor.register_sensor(var, config)
paren = await cg.get_variable(config[CONF_TUYA_ID])
cg.add(var.set_tuya_parent(paren))
await cg.add_variable(var.set_tuya_parent, config[CONF_TUYA_ID])
cg.add(var.set_sensor_id(config[CONF_SENSOR_DATAPOINT]))
+1 -2
View File
@@ -26,7 +26,6 @@ async def to_code(config):
var = await switch.new_switch(config)
await cg.register_component(var, config)
paren = await cg.get_variable(config[CONF_TUYA_ID])
cg.add(var.set_tuya_parent(paren))
await cg.add_variable(var.set_tuya_parent, config[CONF_TUYA_ID])
cg.add(var.set_switch_id(config[CONF_SWITCH_DATAPOINT]))
@@ -27,7 +27,6 @@ async def to_code(config):
var = await text_sensor.new_text_sensor(config)
await cg.register_component(var, config)
paren = await cg.get_variable(config[CONF_TUYA_ID])
cg.add(var.set_tuya_parent(paren))
await cg.add_variable(var.set_tuya_parent, config[CONF_TUYA_ID])
cg.add(var.set_sensor_id(config[CONF_SENSOR_DATAPOINT]))
@@ -89,8 +89,7 @@ async def to_code(config: ConfigType) -> None:
var = await water_heater.new_water_heater(config)
await cg.register_component(var, config)
paren = await cg.get_variable(config[CONF_TUYA_ID])
cg.add(var.set_tuya_parent(paren))
await cg.add_variable(var.set_tuya_parent, config[CONF_TUYA_ID])
cg.add(var.set_switch_id(config[CONF_SWITCH_DATAPOINT]))
+3 -3
View File
@@ -68,9 +68,9 @@ async def to_code(config: ConfigType) -> None:
await sensors(CONF_TEMPERATURE, var.set_temperature_sensor)
await sensors(CONF_EC, var.set_ec_sensor)
if CONF_TEMPERATURE_SENSOR in config:
sens = await cg.get_variable(config[CONF_TEMPERATURE_SENSOR])
cg.add(var.set_temperature_sensor_external(sens))
await cg.add_variable(
var.set_temperature_sensor_external, config.get(CONF_TEMPERATURE_SENSOR)
)
await i2c.register_i2c_device(var, config)
+3 -3
View File
@@ -60,9 +60,9 @@ async def to_code(config: ConfigType) -> None:
await sensors(CONF_TEMPERATURE, var.set_temperature_sensor)
await sensors(CONF_PH, var.set_ph_sensor)
if CONF_TEMPERATURE_SENSOR in config:
sens = await cg.get_variable(config[CONF_TEMPERATURE_SENSOR])
cg.add(var.set_temperature_sensor_external(sens))
await cg.add_variable(
var.set_temperature_sensor_external, config.get(CONF_TEMPERATURE_SENSOR)
)
await i2c.register_i2c_device(var, config)
@@ -69,8 +69,7 @@ async def to_code(config: ConfigType) -> None:
var = await uart.new_uart_component(config)
if time_id := config.get(CONF_TIME_ID):
time_ = await cg.get_variable(time_id)
cg.add(var.set_time_id(time_))
await cg.add_variable(var.set_time_id, time_id)
if time_device_address := config.get(CONF_TIME_DEVICE_ADDRESS):
cg.add(var.set_time_device_address(time_device_address))
+1 -2
View File
@@ -61,8 +61,7 @@ async def to_code(config: ConfigType) -> None:
var = await sensor.new_sensor(config)
await cg.register_component(var, config)
if time_id_config := config.get(CONF_TIME_ID):
time_id = await cg.get_variable(time_id_config)
cg.add(var.set_time(time_id))
await cg.add_variable(var.set_time, time_id_config)
cg.add_define("USE_UPTIME_TIMESTAMP")
+3 -11
View File
@@ -207,17 +207,9 @@ async def to_code(config: ConfigType) -> None:
mic_source2 = await microphone.microphone_source_to_code(mic_sources[1])
cg.add(var.set_microphone_source2(mic_source2))
if CONF_MICRO_WAKE_WORD in config:
mww = await cg.get_variable(config[CONF_MICRO_WAKE_WORD])
cg.add(var.set_micro_wake_word(mww))
if CONF_MEDIA_PLAYER in config:
mp = await cg.get_variable(config[CONF_MEDIA_PLAYER])
cg.add(var.set_media_player(mp))
if CONF_SPEAKER in config:
spkr = await cg.get_variable(config[CONF_SPEAKER])
cg.add(var.set_speaker(spkr))
await cg.add_variable(var.set_micro_wake_word, config.get(CONF_MICRO_WAKE_WORD))
await cg.add_variable(var.set_media_player, config.get(CONF_MEDIA_PLAYER))
await cg.add_variable(var.set_speaker, config.get(CONF_SPEAKER))
cg.add(var.set_use_wake_word(config[CONF_USE_WAKE_WORD]))
+1 -1
View File
@@ -137,7 +137,7 @@ async def to_code(config):
)
)
cg.add(var.set_srctime(await cg.get_variable(config[CONF_TIME_ID])))
await cg.add_variable(var.set_srctime, config[CONF_TIME_ID])
if config[CONF_REQUIRE_CONNECTION_TO_PROCEED]:
cg.add(var.disable_auto_proceed())
+2 -6
View File
@@ -32,9 +32,5 @@ async def to_code(config: ConfigType) -> None:
cg.add(var.set_supports_cool(config[CONF_SUPPORTS_COOL]))
cg.add(var.set_supports_heat(config[CONF_SUPPORTS_HEAT]))
if CONF_SENSOR in config:
sens = await cg.get_variable(config[CONF_SENSOR])
cg.add(var.set_sensor(sens))
transmitter = await cg.get_variable(config[CONF_TRANSMITTER_ID])
cg.add(var.set_transmitter(transmitter))
await cg.add_variable(var.set_sensor, config.get(CONF_SENSOR))
await cg.add_variable(var.set_transmitter, config[CONF_TRANSMITTER_ID])
+1 -2
View File
@@ -113,5 +113,4 @@ async def _add_time_zephyr(config: ConfigType) -> None:
cg.add(var.set_endpoint(slot_index + 1))
cg.add(var.set_cluster_attributes(time_attrs))
hub = await cg.get_variable(config[CONF_ZIGBEE_ID])
cg.add(var.set_parent(hub))
await cg.register_parented(var, config[CONF_ZIGBEE_ID])